
Add Electronic Frailty Index (eFI) value based on Clegg et al. (2016) (doi:10.1093/ageing/afw039 )
Source:R/addElectronicFrailtyIndex.R
addElectronicFrailtyIndex.RdAdd Electronic Frailty Index (eFI) value based on Clegg et al. (2016) (doi:10.1093/ageing/afw039 )
Arguments
- x
A
cdm_tablecontaining a person identifier column namedperson_idorsubject_id.- indexDate
A character string naming the
Datecolumn inxthat defines the index date.- conceptSet
A named concept set supplied as a
codelist,codelist_with_details,concept_set_expression, or named list of concept IDs. It must containactivity_limitation,anemia,arthritis,atrial_fibrillation,cerebrovascular_disease,chronic_kidney_disease,diabetes,dizziness,dyspnea,falls,foot_problem,fragility_fracture,hearing_impairment,heart_failure,heart_valve_disorder,housebound,hypertension,hypotension_syncope,ischemic_heart_disease,memory_cognitive_disorder,mobility_problems,osteoporosis,parkinsonism_tremor,peptic_ulcer,peripheral_vascular_disease,care_requirement,respiratory_disease,skin_ulcer,sleep_disturbance,social_vulnerability,thyroid_disease,urinary_incontinence,urinary_system_disease,visual_impairment,weight_loss_anorexiaas concepts. By default, internal codelists are used.- categories
A named list of numeric vectors, each containing the lower and upper bounds of a score interval. An additional column with the suffix
_categoriesis added. Intervals are evaluated in the order supplied, and missing scores are labelledmissing.- window
NULLto use the windows defined by the index components, or a numeric vector of length two,c(min, max), to override the component windows in days relative toindexDate. Use-InforInffor an unbounded lower or upper limit.- nameStyle
A character string specifying the name of the new column.
- name
A character string specifying the name of the output table. If
NULL, a temporary table is created.
Examples
# \donttest{
library(omock)
library(duckdb)
library(OmopIndices)
library(dplyr)
library(CohortConstructor)
cdm <- mockCdmFromDataset(datasetName = "GiBleed", source = "duckdb")
#> ℹ Loading bundled GiBleed tables from package data.
#> ℹ Adding drug_strength table.
#> ℹ Creating local <cdm_reference> object.
#> ℹ Inserting <cdm_reference> into duckdb.
#> duckdb keeps downloaded extensions and secrets in a temporary directory:
#> ℹ /tmp/Rtmp5IUc4q/duckdb
#> This is removed when the R session ends.
#> • Extensions are re-downloaded each session.
#> • Secrets are lost.
#> ℹ Run duckdb(shared_home = TRUE) (or create ~/.duckdb) to keep them (suitable for most users).
#> ℹ Run duckdb(shared_home = FALSE) to accept the temporary directory (and silence this message).
#> ℹ See ?duckdb_storage for details and alternatives.
cdm$cohort <- conceptCohort(
cdm = cdm,
conceptSet = list(sinusitis = c(257012L, 4283893L, 4294548L, 40481087L)),
name = "cohort"
)
#> ℹ Subsetting table condition_occurrence using 4 concepts with domain:
#> condition.
#> ℹ Combining tables.
#> ℹ Creating cohort attributes.
#> ℹ Applying cohort requirements.
#> ℹ Merging overlapping records.
#> ✔ Cohort cohort created.
# Using the internal concept sets:
cdm$cohort |>
addElectronicFrailtyIndex() |>
select(subject_id, cohort_start_date, efi, efi_categories) |>
glimpse()
#> Warning: 18203 unique codelist concept IDs are not present in `cdm$concept`.
#> Warning: 138 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 138 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 601 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 601 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 1308 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 1308 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 18 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 18 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 754 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 754 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 5782 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 5782 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 272 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 272 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 19 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 19 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 56 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 56 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 8 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 8 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 15 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 15 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 2092 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 2092 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 426 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 426 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 134 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 134 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 830 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 830 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • housebound: 4022076, 4022523, 4052962, 4177372, 45877743
#> ! 5 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 144 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 144 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 52 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 52 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 207 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 207 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 916 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 916 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 484 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 484 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 88 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 88 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 1409 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 1409 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 300 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 300 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 310 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 310 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 30 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 30 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 330 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 330 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 194 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 194 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 236 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 236 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 62 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 62 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 544 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 544 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 95 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 95 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 265 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 265 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 713 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 713 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: 48 unique codelist concept IDs are not present in `cdm$concept`.
#> ! 48 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Rows: ??
#> Columns: 4
#> $ subject_id <int> 97, 2088, 1911, 2798, 4799, 741, 3580, 2836, 3601, 3…
#> $ cohort_start_date <date> 1992-08-27, 1974-06-15, 2002-08-06, 1999-01-15, 201…
#> $ efi <dbl> 0.13888889, 0.16666667, 0.13888889, 0.13888889, 0.13…
#> $ efi_categories <chr> "mild", "mild", "mild", "mild", "mild", "fit", "fit"…
# This example uses custom concept sets.
customConceptSet <- list(
activity_limitation = 763723L,
anemia = 439777L,
arthritis = 4291025L,
atrial_fibrillation = 313217L,
chronic_kidney_disease = 46271022L,
cerebrovascular_disease = 381591L,
dizziness = 4223938L,
dyspnea = 312437L,
falls = 4059015L,
foot_problem = 4101512L,
fragility_fracture = 3170964L,
hearing_impairment = 4234647L,
heart_failure = 316139L,
heart_valve_disorder = 4281749L,
housebound = 4052962L,
hypertension = 319826L,
hypotension_syncope = 316447L,
ischemic_heart_disease = 4185932L,
memory_cognitive_disorder = 4304008L,
mobility_problems = 4053076L,
osteoporosis = 80502L,
parkinsonism_tremor = 4140090L,
peptic_ulcer = 4027663L,
peripheral_vascular_disease = 321052L,
care_requirement = 3661927L,
respiratory_disease = 317009L,
skin_ulcer = 4262920L,
sleep_disturbance = 435524L,
social_vulnerability = 4026161L,
diabetes = 201820L,
thyroid_disease = 4017052L,
urinary_incontinence = 197672L,
urinary_system_disease = 75865L,
visual_impairment = 4265433L,
weight_loss_anorexia = 436675L
)
cdm$cohort |>
addElectronicFrailtyIndex(
conceptSet = customConceptSet,
nameStyle = "efi_custom"
) |>
select(subject_id, cohort_start_date, efi_custom, efi_custom_categories) |>
glimpse()
#> Warning: 30 unique codelist concept IDs are not present in `cdm$concept`.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • activity_limitation: 763723
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • arthritis: 4291025
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • cerebrovascular_disease: 381591
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • chronic_kidney_disease: 46271022
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • diabetes: 201820
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • dizziness: 4223938
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • dyspnea: 312437
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • falls: 4059015
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • foot_problem: 4101512
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • fragility_fracture: 3170964
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • hearing_impairment: 4234647
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • heart_failure: 316139
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • heart_valve_disorder: 4281749
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • housebound: 4052962
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • hypertension: 319826
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • hypotension_syncope: 316447
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • ischemic_heart_disease: 4185932
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • memory_cognitive_disorder: 4304008
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • mobility_problems: 4053076
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • parkinsonism_tremor: 4140090
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • peripheral_vascular_disease: 321052
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • care_requirement: 3661927
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • skin_ulcer: 4262920
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • sleep_disturbance: 435524
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • social_vulnerability: 4026161
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • thyroid_disease: 4017052
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • urinary_incontinence: 197672
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • urinary_system_disease: 75865
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • visual_impairment: 4265433
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Warning: The following codelist concept IDs are not present in `cdm$concept`:
#> • weight_loss_anorexia: 436675
#> ! 1 concept(s) from domain NA eliminated as it is not supported.
#> ℹ Supported domains are: device, specimen, measurement, drug, condition,
#> observation, procedure, episode, and visit.
#> Rows: ??
#> Columns: 4
#> $ subject_id <int> 97, 2088, 1911, 2798, 4799, 741, 3580, 2836, 360…
#> $ cohort_start_date <date> 1992-08-27, 1974-06-15, 2002-08-06, 1999-01-15,…
#> $ efi_custom <dbl> 0.02777778, 0.02777778, 0.00000000, 0.00000000, …
#> $ efi_custom_categories <chr> "fit", "fit", "fit", "fit", "fit", "fit", "fit",…
# }