From 54818e009f19363687dcf169bbeeff14cf64971c Mon Sep 17 00:00:00 2001 From: Aakash Aanegola Date: Fri, 18 Apr 2025 15:53:22 -0400 Subject: [PATCH 1/3] loaded cxr table; buggy dicom --- inst/extdata/config/concept-dict.R | 32 ++++++++++++++ inst/extdata/config/concept-dict.json | 28 ++++++++++++ inst/extdata/config/data-sources.R | 27 ++++++++++-- inst/extdata/config/data-sources.json | 63 +++++++++++++++++++++++++++ 4 files changed, 147 insertions(+), 3 deletions(-) diff --git a/inst/extdata/config/concept-dict.R b/inst/extdata/config/concept-dict.R index c8d15cb6..4820f8e3 100644 --- a/inst/extdata/config/concept-dict.R +++ b/inst/extdata/config/concept-dict.R @@ -3322,6 +3322,38 @@ cfg <- list( ) ), class = c("unt_cncpt", "num_cncpt") + ), + viewposition = list( + levels = c("frontal", "lateral", "decubitus", "oblique", "special", "unknown"), + class = "fct_cncpt", + description = "Grouped X-ray view positions", + category = "imaging", + sources = list( + miiv = list( + list( + table = "cxrmetadata", + val_var = "viewposition", + callback = "apply_map( + c( + 'PA' = 'frontal', 'AP' = 'frontal', 'AP AXIAL' = 'frontal', + 'LATERAL' = 'lateral', 'LL' = 'lateral', 'XTABLE LATERAL' = 'lateral', + 'PA LLD' = 'decubitus', 'AP LLD' = 'decubitus', 'AP RLD' = 'decubitus', 'PA RLD' = 'decubitus', + 'LAO' = 'oblique', 'RAO' = 'oblique', 'LPO' = 'oblique', + 'SWIMMERS' = 'special' + ) + )", + class = "col_itm" + ) + ) + ) + ), + study_id = list( + description = "unique identifier for the subject", + sources = list( + miiv = list( + list(table = "cxrmetadata", val_var = "study_id", class = "col_itm") + ) + ) ) ) diff --git a/inst/extdata/config/concept-dict.json b/inst/extdata/config/concept-dict.json index 1c8ea243..e1b215cc 100644 --- a/inst/extdata/config/concept-dict.json +++ b/inst/extdata/config/concept-dict.json @@ -5999,6 +5999,18 @@ ] } }, + "study_id": { + "description": "unique identifier for the subject", + "sources": { + "miiv": [ + { + "table": "cxrmetadata", + "val_var": "study_id", + "class": "col_itm" + } + ] + } + }, "supp_o2": { "concepts": ["vent_ind", "fio2"], "description": "supplemental oxygen", @@ -6624,6 +6636,22 @@ ] } }, + "viewposition": { + "levels": ["frontal", "lateral", "decubitus", "oblique", "special", "unknown"], + "class": "fct_cncpt", + "description": "Grouped X-ray view positions", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrmetadata", + "val_var": "viewposition", + "callback": "apply_map(\n c(\n 'PA' = 'frontal', 'AP' = 'frontal', 'AP AXIAL' = 'frontal',\n 'LATERAL' = 'lateral', 'LL' = 'lateral', 'XTABLE LATERAL' = 'lateral',\n 'PA LLD' = 'decubitus', 'AP LLD' = 'decubitus', 'AP RLD' = 'decubitus', 'PA RLD' = 'decubitus',\n 'LAO' = 'oblique', 'RAO' = 'oblique', 'LPO' = 'oblique',\n 'SWIMMERS' = 'special'\n )\n )", + "class": "col_itm" + } + ] + } + }, "wbc": { "unit": ["K/uL", "G/l"], "min": 0, diff --git a/inst/extdata/config/data-sources.R b/inst/extdata/config/data-sources.R index fcf5963d..7ff483c2 100644 --- a/inst/extdata/config/data-sources.R +++ b/inst/extdata/config/data-sources.R @@ -1226,6 +1226,19 @@ miiv_tbl_cfg <- function() { statusdescription = list(spec = "col_character"), originalamount = list(spec = "col_double"), originalrate = list(spec = "col_double") + ), + cxrmetadata = list( + dicom_id = list(spec = "col_character"), + subject_id = list(spec = "col_integer"), + study_id = list(spec = "col_integer"), + performedprocedurestepdescription = list(spec = "col_character"), + viewposition = list(spec = "col_character"), + rows = list(spec = "col_integer"), + columns = list(spec = "col_integer"), + studytime = list(spec = "col_datetime", format = "%Y-%m-%d %H:%M:%S"), + procedurecodesequence_codemeaning = list(spec = "col_character"), + viewcodesequence_codemeaning = list(spec = "col_character"), + patientorientationcodesequence_codemeaning = list(spec = "col_character") ) ) @@ -1346,6 +1359,10 @@ miiv_tbl_cfg <- function() { index_var = "starttime", val_var = "rate", unit_var = "rateuom" + ), + cxrmetadata = list( + id_var = "dicom_id", + index_var = "studytime" ) ) @@ -1387,7 +1404,8 @@ miiv_tbl_cfg <- function() { omr = 6439169L, caregiver = 15468L, provider = 40508L, - ingredientevents = 11627821L + ingredientevents = 11627821L, + cxrmetadata = 377110L ) files <- c( @@ -1421,7 +1439,8 @@ miiv_tbl_cfg <- function() { omr = "hosp/omr.csv.gz", caregiver = "icu/caregiver.csv.gz", provider = "hosp/provider.csv.gz", - ingredientevents = "icu/ingredientevents.csv.gz" + ingredientevents = "icu/ingredientevents.csv.gz", + cxrmetadata = "cxr/cxrmetadata.csv.gz" ) part <- list( @@ -1739,7 +1758,9 @@ cfg <- list( hadm = list(id = "hadm_id", position = 2L, start = "admittime", end = "dischtime", table = "admissions"), icustay = list(id = "stay_id", position = 3L, start = "intime", - end = "outtime", table = "icustays") + end = "outtime", table = "icustays"), + dicom_id = list(id = "dicom_id", position = 4L, start = "studytime", + end = "studytime", table = "cxrmetadata") ), tables = miiv_tbl_cfg() ), diff --git a/inst/extdata/config/data-sources.json b/inst/extdata/config/data-sources.json index e31b3232..66267d9d 100644 --- a/inst/extdata/config/data-sources.json +++ b/inst/extdata/config/data-sources.json @@ -7061,6 +7061,13 @@ "start": "intime", "end": "outtime", "table": "icustays" + }, + "dicom_id": { + "id": "dicom_id", + "position": 4, + "start": "studytime", + "end": "studytime", + "table": "cxrmetadata" } }, "tables": { @@ -8832,6 +8839,62 @@ "spec": "col_double" } } + }, + "cxrmetadata": { + "files": "cxr/cxrmetadata.csv.gz", + "defaults": { + "id_var": "dicom_id", + "index_var": "studytime", + "time_vars": "studytime" + }, + "num_rows": 377110, + "cols": { + "dicom_id": { + "name": "dicom_id", + "spec": "col_character" + }, + "subject_id": { + "name": "subject_id", + "spec": "col_integer" + }, + "study_id": { + "name": "study_id", + "spec": "col_integer" + }, + "performedprocedurestepdescription": { + "name": "performedprocedurestepdescription", + "spec": "col_character" + }, + "viewposition": { + "name": "viewposition", + "spec": "col_character" + }, + "rows": { + "name": "rows", + "spec": "col_integer" + }, + "columns": { + "name": "columns", + "spec": "col_integer" + }, + "studytime": { + "name": "studytime", + "spec": "col_datetime", + "format": "%Y-%m-%d %H:%M:%S" + }, + "procedurecodesequence_codemeaning": { + "name": "procedurecodesequence_codemeaning", + "spec": "col_character" + }, + "viewcodesequence_codemeaning": { + "name": "viewcodesequence_codemeaning", + "spec": "col_character" + }, + "patientorientationcodesequence_codemeaning": { + "name": "patientorientationcodesequence_codemeaning", + "spec": "col_character" + } + } } } }, From e03e75050d6a506edcaba341aaa2926c5471106d Mon Sep 17 00:00:00 2001 From: Aakash Aanegola Date: Fri, 18 Apr 2025 17:01:11 -0400 Subject: [PATCH 2/3] chexpert concepts --- inst/extdata/config/concept-dict.R | 127 ++++++++++++++++++ inst/extdata/config/concept-dict.json | 183 ++++++++++++++++++++++++++ inst/extdata/config/data-sources.R | 29 +++- inst/extdata/config/data-sources.json | 80 +++++++++++ 4 files changed, 417 insertions(+), 2 deletions(-) diff --git a/inst/extdata/config/concept-dict.R b/inst/extdata/config/concept-dict.R index 4820f8e3..685050b6 100644 --- a/inst/extdata/config/concept-dict.R +++ b/inst/extdata/config/concept-dict.R @@ -3349,11 +3349,138 @@ cfg <- list( ), study_id = list( description = "unique identifier for the subject", + category = "imaging", sources = list( miiv = list( list(table = "cxrmetadata", val_var = "study_id", class = "col_itm") ) ) + ), + atelectasis = list( + description = "Atelectasis", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "atelectasis", class = "col_itm") + ) + ) + ), + cardiomegaly = list( + description = "Cardiomegaly", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "cardiomegaly", class = "col_itm") + ) + ) + ), + consolidation = list( + description = "Consolidation", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "consolidation", class = "col_itm") + ) + ) + ), + edema = list( + description = "Edema", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "edema", class = "col_itm") + ) + ) + ), + enlarged_cardiomediastinum = list( + description = "Enlarged Cardiomediastinum", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "enlarged_cardiomediastinum", class = "col_itm") + ) + ) + ), + fracture = list( + description = "Fracture", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "fracture", class = "col_itm") + ) + ) + ), + lung_lesion = list( + description = "Lung Lesion", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "lung_lesion", class = "col_itm") + ) + ) + ), + lung_opacity = list( + description = "Lung Opacity", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "lung_opacity", class = "col_itm") + ) + ) + ), + no_finding = list( + description = "If all other chexpert labels are 0 or -1, no finding is 1", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "no_finding", class = "col_itm") + ) + ) + ), + pleural_effusion = list( + description = "Pleural Effusion", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "pleural_effusion", class = "col_itm") + ) + ) + ), + pleural_other = list( + description = "Pleural Other", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "pleural_other", class = "col_itm") + ) + ) + ), + pneumonia = list( + description = "Pneumonia", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "pneumonia", class = "col_itm") + ) + ) + ), + pneumothorax = list( + description = "Pneumothorax", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "pneumothorax", class = "col_itm") + ) + ) + ), + support_devices = list( + description = "Support Devices", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrchexpert", val_var = "support_devices", class = "col_itm") + ) + ) ) ) diff --git a/inst/extdata/config/concept-dict.json b/inst/extdata/config/concept-dict.json index e1b215cc..d4d11d00 100644 --- a/inst/extdata/config/concept-dict.json +++ b/inst/extdata/config/concept-dict.json @@ -592,6 +592,19 @@ ] } }, + "atelectasis": { + "description": "Atelectasis", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "atelectasis", + "class": "col_itm" + } + ] + } + }, "avpu": { "concepts": "gcs", "description": "AVPU scale", @@ -1215,6 +1228,19 @@ ] } }, + "cardiomegaly": { + "description": "Cardiomegaly", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "cardiomegaly", + "class": "col_itm" + } + ] + } + }, "ck": { "unit": ["IU/L", "U/l"], "min": 0, @@ -1414,6 +1440,19 @@ ] } }, + "consolidation": { + "description": "Consolidation", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "consolidation", + "class": "col_itm" + } + ] + } + }, "cort": { "class": "lgl_cncpt", "description": "corticosteroids", @@ -2228,6 +2267,19 @@ "callback": "vaso60", "class": "rec_cncpt" }, + "edema": { + "description": "Edema", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "edema", + "class": "col_itm" + } + ] + } + }, "egcs": { "min": 1, "max": 4, @@ -2294,6 +2346,19 @@ ] } }, + "enlarged_cardiomediastinum": { + "description": "Enlarged Cardiomediastinum", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "enlarged_cardiomediastinum", + "class": "col_itm" + } + ] + } + }, "eos": { "unit": "%", "min": 0, @@ -2888,6 +2953,19 @@ ] } }, + "fracture": { + "description": "Fracture", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "fracture", + "class": "col_itm" + } + ] + } + }, "gcs": { "concepts": ["egcs", "mgcs", "vgcs", "tgcs", "ett_gcs"], "description": "Glasgow coma scale (non-sedated)", @@ -3690,6 +3768,32 @@ ] } }, + "lung_lesion": { + "description": "Lung Lesion", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "lung_lesion", + "class": "col_itm" + } + ] + } + }, + "lung_opacity": { + "description": "Lung Opacity", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "lung_opacity", + "class": "col_itm" + } + ] + } + }, "lymph": { "unit": "%", "min": 0, @@ -4437,6 +4541,19 @@ "callback": "news_score", "class": "rec_cncpt" }, + "no_finding": { + "description": "If all other chexpert labels are 0 or -1, no finding is 1", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "no_finding", + "class": "col_itm" + } + ] + } + }, "norepi_dur": { "description": "norepinephrine duration", "category": "medications", @@ -5052,6 +5169,32 @@ ] } }, + "pleural_effusion": { + "description": "Pleural Effusion", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "pleural_effusion", + "class": "col_itm" + } + ] + } + }, + "pleural_other": { + "description": "Pleural Other", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "pleural_other", + "class": "col_itm" + } + ] + } + }, "plt": { "unit": ["K/uL", "G/l"], "min": 5, @@ -5119,6 +5262,32 @@ ] } }, + "pneumonia": { + "description": "Pneumonia", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "pneumonia", + "class": "col_itm" + } + ] + } + }, + "pneumothorax": { + "description": "Pneumothorax", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "pneumothorax", + "class": "col_itm" + } + ] + } + }, "po2": { "unit": ["mmHg", "mm Hg"], "min": 40, @@ -6001,6 +6170,7 @@ }, "study_id": { "description": "unique identifier for the subject", + "category": "imaging", "sources": { "miiv": [ { @@ -6019,6 +6189,19 @@ "callback": "supp_o2", "class": "rec_cncpt" }, + "support_devices": { + "description": "Support Devices", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrchexpert", + "val_var": "support_devices", + "class": "col_itm" + } + ] + } + }, "susp_inf": { "concepts": ["abx", "samp"], "description": "suspected infection", diff --git a/inst/extdata/config/data-sources.R b/inst/extdata/config/data-sources.R index 7ff483c2..f097d023 100644 --- a/inst/extdata/config/data-sources.R +++ b/inst/extdata/config/data-sources.R @@ -1239,6 +1239,25 @@ miiv_tbl_cfg <- function() { procedurecodesequence_codemeaning = list(spec = "col_character"), viewcodesequence_codemeaning = list(spec = "col_character"), patientorientationcodesequence_codemeaning = list(spec = "col_character") + ), + cxrchexpert = list( + subject_id = list(spec = "col_integer"), + study_id = list(spec = "col_integer"), + atelectasis = list(spec = "col_double"), + cardiomegaly = list(spec = "col_double"), + consolidation = list(spec = "col_double"), + edema = list(spec = "col_double"), + enlarged_cardiomediastinum = list(spec = "col_double"), + fracture = list(spec = "col_double"), + lung_lesion = list(spec = "col_double"), + lung_opacity = list(spec = "col_double"), + no_finding = list(spec = "col_double"), + pleural_effusion = list(spec = "col_double"), + pleural_other = list(spec = "col_double"), + pneumonia = list(spec = "col_double"), + pneumothorax = list(spec = "col_double"), + support_devices = list(spec = "col_double"), + studytime = list(spec = "col_datetime", format = "%Y-%m-%d %H:%M:%S") ) ) @@ -1363,6 +1382,10 @@ miiv_tbl_cfg <- function() { cxrmetadata = list( id_var = "dicom_id", index_var = "studytime" + ), + cxrchexpert = list( + id_var = "subject_id", + index_var = "studytime" ) ) @@ -1405,7 +1428,8 @@ miiv_tbl_cfg <- function() { caregiver = 15468L, provider = 40508L, ingredientevents = 11627821L, - cxrmetadata = 377110L + cxrmetadata = 377110L, + cxrchexpert = 227827L ) files <- c( @@ -1440,7 +1464,8 @@ miiv_tbl_cfg <- function() { caregiver = "icu/caregiver.csv.gz", provider = "hosp/provider.csv.gz", ingredientevents = "icu/ingredientevents.csv.gz", - cxrmetadata = "cxr/cxrmetadata.csv.gz" + cxrmetadata = "cxr/cxrmetadata.csv.gz", + cxrchexpert = "cxr/cxrchexpert.csv.gz" ) part <- list( diff --git a/inst/extdata/config/data-sources.json b/inst/extdata/config/data-sources.json index 66267d9d..f43d86fe 100644 --- a/inst/extdata/config/data-sources.json +++ b/inst/extdata/config/data-sources.json @@ -8895,6 +8895,86 @@ "spec": "col_character" } } + }, + "cxrchexpert": { + "files": "cxr/cxrchexpert.csv.gz", + "defaults": { + "id_var": "subject_id", + "index_var": "studytime", + "time_vars": "studytime" + }, + "num_rows": 227827, + "cols": { + "subject_id": { + "name": "subject_id", + "spec": "col_integer" + }, + "study_id": { + "name": "study_id", + "spec": "col_integer" + }, + "atelectasis": { + "name": "atelectasis", + "spec": "col_double" + }, + "cardiomegaly": { + "name": "cardiomegaly", + "spec": "col_double" + }, + "consolidation": { + "name": "consolidation", + "spec": "col_double" + }, + "edema": { + "name": "edema", + "spec": "col_double" + }, + "enlarged_cardiomediastinum": { + "name": "enlarged_cardiomediastinum", + "spec": "col_double" + }, + "fracture": { + "name": "fracture", + "spec": "col_double" + }, + "lung_lesion": { + "name": "lung_lesion", + "spec": "col_double" + }, + "lung_opacity": { + "name": "lung_opacity", + "spec": "col_double" + }, + "no_finding": { + "name": "no_finding", + "spec": "col_double" + }, + "pleural_effusion": { + "name": "pleural_effusion", + "spec": "col_double" + }, + "pleural_other": { + "name": "pleural_other", + "spec": "col_double" + }, + "pneumonia": { + "name": "pneumonia", + "spec": "col_double" + }, + "pneumothorax": { + "name": "pneumothorax", + "spec": "col_double" + }, + "support_devices": { + "name": "support_devices", + "spec": "col_double" + }, + "studytime": { + "name": "studytime", + "spec": "col_datetime", + "format": "%Y-%m-%d %H:%M:%S" + } + } } } }, From fe9e07a91ebb906caca291fd514f22983cef9b55 Mon Sep 17 00:00:00 2001 From: Aakash Aanegola Date: Sun, 20 Apr 2025 14:28:37 -0400 Subject: [PATCH 3/3] removing dicom ID --- inst/extdata/config/concept-dict.R | 10 ++++++++++ inst/extdata/config/concept-dict.json | 14 ++++++++++++++ inst/extdata/config/data-sources.R | 6 ++---- inst/extdata/config/data-sources.json | 9 +-------- 4 files changed, 27 insertions(+), 12 deletions(-) diff --git a/inst/extdata/config/concept-dict.R b/inst/extdata/config/concept-dict.R index 685050b6..f56d6f4c 100644 --- a/inst/extdata/config/concept-dict.R +++ b/inst/extdata/config/concept-dict.R @@ -3356,6 +3356,16 @@ cfg <- list( ) ) ), + dicom_id = list( + description = "unique identifier for the image", + category = "imaging", + sources = list( + miiv = list( + list(table = "cxrmetadata", sub_var = "dicom_id", regex = "^.*$", + class = "rgx_itm") + ) + ) + ), atelectasis = list( description = "Atelectasis", category = "imaging", diff --git a/inst/extdata/config/concept-dict.json b/inst/extdata/config/concept-dict.json index d4d11d00..ffe02d9c 100644 --- a/inst/extdata/config/concept-dict.json +++ b/inst/extdata/config/concept-dict.json @@ -1871,6 +1871,20 @@ }, "class": ["unt_cncpt", "num_cncpt"] }, + "dicom_id": { + "description": "unique identifier for the image", + "category": "imaging", + "sources": { + "miiv": [ + { + "table": "cxrmetadata", + "sub_var": "dicom_id", + "regex": "^.*$", + "class": "rgx_itm" + } + ] + } + }, "dobu_dur": { "description": "dobutamine duration", "category": "medications", diff --git a/inst/extdata/config/data-sources.R b/inst/extdata/config/data-sources.R index f097d023..bfaff167 100644 --- a/inst/extdata/config/data-sources.R +++ b/inst/extdata/config/data-sources.R @@ -1380,7 +1380,7 @@ miiv_tbl_cfg <- function() { unit_var = "rateuom" ), cxrmetadata = list( - id_var = "dicom_id", + id_var = "subject_id", index_var = "studytime" ), cxrchexpert = list( @@ -1783,9 +1783,7 @@ cfg <- list( hadm = list(id = "hadm_id", position = 2L, start = "admittime", end = "dischtime", table = "admissions"), icustay = list(id = "stay_id", position = 3L, start = "intime", - end = "outtime", table = "icustays"), - dicom_id = list(id = "dicom_id", position = 4L, start = "studytime", - end = "studytime", table = "cxrmetadata") + end = "outtime", table = "icustays") ), tables = miiv_tbl_cfg() ), diff --git a/inst/extdata/config/data-sources.json b/inst/extdata/config/data-sources.json index f43d86fe..07d645dd 100644 --- a/inst/extdata/config/data-sources.json +++ b/inst/extdata/config/data-sources.json @@ -7061,13 +7061,6 @@ "start": "intime", "end": "outtime", "table": "icustays" - }, - "dicom_id": { - "id": "dicom_id", - "position": 4, - "start": "studytime", - "end": "studytime", - "table": "cxrmetadata" } }, "tables": { @@ -8843,7 +8836,7 @@ "cxrmetadata": { "files": "cxr/cxrmetadata.csv.gz", "defaults": { - "id_var": "dicom_id", + "id_var": "subject_id", "index_var": "studytime", "time_vars": "studytime" },