Skip to content

Commit 0da1575

Browse files
chore(mimic-iv): regenerate postgres and duckdb lab concept copies
Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent 4417494 commit 0da1575

4 files changed

Lines changed: 19 additions & 5 deletions

File tree

mimic-iv/concepts_duckdb/measurement/complete_blood_count.sql

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ SELECT
88
MAX(CASE WHEN itemid = 51221 THEN valuenum ELSE NULL END) AS hematocrit,
99
MAX(CASE WHEN itemid = 51222 THEN valuenum ELSE NULL END) AS hemoglobin,
1010
MAX(CASE WHEN itemid = 51248 THEN valuenum ELSE NULL END) AS mch,
11-
MAX(CASE WHEN itemid = 51249 THEN valuenum ELSE NULL END) AS mchc,
11+
MAX(CASE WHEN itemid = 51249 AND valueuom = 'g/dL' THEN valuenum ELSE NULL END) AS mchc,
1212
MAX(CASE WHEN itemid = 51250 THEN valuenum ELSE NULL END) AS mcv,
1313
MAX(CASE WHEN itemid = 51265 THEN valuenum ELSE NULL END) AS platelet,
1414
MAX(CASE WHEN itemid = 51279 THEN valuenum ELSE NULL END) AS rbc,
@@ -19,6 +19,9 @@ FROM mimiciv_hosp.labevents AS le
1919
WHERE
2020
le.itemid IN (51221, 51222, 51248, 51249, 51250, 51265, 51279, 51277, 52159, 51301)
2121
AND NOT valuenum IS NULL
22+
AND (
23+
itemid <> 51249 OR valueuom = 'g/dL'
24+
)
2225
AND valuenum > 0
2326
GROUP BY
2427
le.specimen_id

mimic-iv/concepts_duckdb/measurement/inflammation.sql

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,14 @@ SELECT
55
MAX(hadm_id) AS hadm_id,
66
MAX(charttime) AS charttime,
77
le.specimen_id,
8-
MAX(CASE WHEN itemid = 50889 THEN valuenum ELSE NULL END) AS crp
8+
MAX(CASE WHEN itemid = 50889 AND valueuom = 'mg/L' THEN valuenum ELSE NULL END) AS crp
99
FROM mimiciv_hosp.labevents AS le
1010
WHERE
11-
le.itemid IN (50889) AND NOT valuenum IS NULL AND valuenum > 0
11+
le.itemid IN (50889)
12+
AND NOT valuenum IS NULL
13+
AND (
14+
itemid <> 50889 OR valueuom = 'mg/L'
15+
)
16+
AND valuenum > 0
1217
GROUP BY
1318
le.specimen_id

mimic-iv/concepts_postgres/measurement/complete_blood_count.sql

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ SELECT
99
MAX(CASE WHEN itemid = 51221 THEN valuenum ELSE NULL END) AS hematocrit,
1010
MAX(CASE WHEN itemid = 51222 THEN valuenum ELSE NULL END) AS hemoglobin,
1111
MAX(CASE WHEN itemid = 51248 THEN valuenum ELSE NULL END) AS mch,
12-
MAX(CASE WHEN itemid = 51249 THEN valuenum ELSE NULL END) AS mchc,
12+
MAX(CASE WHEN itemid = 51249 AND valueuom = 'g/dL' THEN valuenum ELSE NULL END) AS mchc,
1313
MAX(CASE WHEN itemid = 51250 THEN valuenum ELSE NULL END) AS mcv,
1414
MAX(CASE WHEN itemid = 51265 THEN valuenum ELSE NULL END) AS platelet,
1515
MAX(CASE WHEN itemid = 51279 THEN valuenum ELSE NULL END) AS rbc,
@@ -31,6 +31,9 @@ WHERE
3131
51301 /* WBC */
3232
)
3333
AND NOT valuenum IS NULL
34+
AND /* MCHC (51249) is sometimes recorded with valueuom '%' in error; keep g/dL only */ (
35+
itemid <> 51249 OR valueuom = 'g/dL'
36+
)
3437
AND /* lab values cannot be 0 and cannot be negative */ valuenum > 0
3538
GROUP BY
3639
le.specimen_id

mimic-iv/concepts_postgres/measurement/inflammation.sql

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,11 +5,14 @@ SELECT
55
MAX(hadm_id) AS hadm_id,
66
MAX(charttime) AS charttime,
77
le.specimen_id, /* convert from itemid into a meaningful column */
8-
MAX(CASE WHEN itemid = 50889 THEN valuenum ELSE NULL END) AS crp
8+
MAX(CASE WHEN itemid = 50889 AND valueuom = 'mg/L' THEN valuenum ELSE NULL END) AS crp
99
FROM mimiciv_hosp.labevents AS le
1010
WHERE
1111
le.itemid IN (50889 /* 51652 -- high sensitivity CRP */ /* crp */)
1212
AND NOT valuenum IS NULL
13+
AND /* CRP (50889) rows with missing valueuom are excluded; mg/L is the expected unit */ (
14+
itemid <> 50889 OR valueuom = 'mg/L'
15+
)
1316
AND /* lab values cannot be 0 and cannot be negative */ valuenum > 0
1417
GROUP BY
1518
le.specimen_id

0 commit comments

Comments
 (0)