The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

Codelist diagnostics

Introduction

In this example we’re going to summarise the characteristics of individuals with an ankle sprain, ankle fracture, forearm fracture, a hip fracture and different measurements using the Eunomia synthetic data.

We’ll begin by creating our study cohorts.

library(CDMConnector)
library(CohortConstructor)
library(CodelistGenerator)
library(PhenotypeR)
library(MeasurementDiagnostics)
library(dplyr)
library(ggplot2)

con <- DBI::dbConnect(duckdb::duckdb(), 
                      CDMConnector::eunomiaDir("synpuf-1k", "5.3"))
cdm <- CDMConnector::cdmFromCon(con = con, 
                                cdmName = "Eunomia Synpuf",
                                cdmSchema   = "main",
                                writeSchema = "main", 
                                achillesSchema = "main")

cdm$injuries <- conceptCohort(cdm = cdm,
  conceptSet = list(
    "ankle_sprain" = 81151,
    "ankle_fracture" = 4059173,
    "forearm_fracture" = 4278672,
    "hip_fracture" = 4230399,
    "measurements_cohort" = c(40660437L, 2617206L, 4034850L,  2617239L, 4098179L)
  ),
  name = "injuries")
cdm$injuries |> 
  glimpse()

Summarising code use

To get a good understanding of the codes we’ve used to define our cohorts we can use the codelistDiagnostics() function.

code_diag <- codelistDiagnostics(cdm$injuries)

Codelist diagnostics builds on CodelistGenerator and MeasurementDiagnostics R packages to perform the following analyses:

The output of a function is a summarised result table.

Add codelist attribute

Some cohorts that may be created manually may not have the codelists recorded in the cohort_codelist attribute. The package has a utility function to record a codelist in a cohort_table object:

cohortCodelist(cdm$injuries, cohortId = 1)
cdm$injuries <- cdm$injuries |>
  addCodelistAttribute(codelist = list(new_codelist = c(1L, 2L)), cohortName = "ankle_fracture")
cohortCodelist(cdm$injuries, cohortId = 1)

Visualise the results

We will now use different functions to visualise the results generated by CohortDiagnostics. Notice that these functions are from CodelistGenerator and MeasurementDiagnostics R packages packages.

Achilles code use

tableAchillesCodeUse(code_diag)

Orphan code use

tableOrphanCodes(code_diag)

Cohort code use

tableCohortCodeUse(code_diag)

Measurement timings

tableMeasurementSummary(code_diag)
plotMeasurementSummary(code_diag)

Measurement value as concept

tableMeasurementValueAsConcept(code_diag)
plotMeasurementValueAsConcept(code_diag)

Measurement value as numeric

tableMeasurementValueAsNumber(code_diag)
plotMeasurementValueAsNumber(code_diag)

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.