今天在学习官方衍生表mimiciv_derived.cardiac_marker心脏标记表时候发现了一些问题:
该表中troponin_t (肌钙蛋白t)的值结果都是空值null 或者 ___ (由于去标识化), 这明显是不合理的
小编查看了该表的官方生成sql。
几乎每个值都是 ___ (由于去标识化),因此派生表具有所有空值。然而 valuenum 列具有实际数据,因此我们应该更改代码以使用 valuenum
我来看下更改后的结果:
-- begin query that extracts the data
SELECT
MAX(subject_id) AS subject_id
, MAX(hadm_id) AS hadm_id
, MAX(charttime) AS charttime
, le.specimen_id
-- convert from itemid into a meaningful column
-- 从 itemid 转换为有意义的列
, MAX(CASE WHEN itemid = 51003 THEN valuenum ELSE NULL END) AS troponin_t -- 肌钙蛋白t
, MAX(CASE WHEN itemid = 50911 THEN valuenum ELSE NULL END) AS ck_mb -- 肌酸激酶同工酶,是CK中的一部分
, MAX(CASE WHEN itemid = 50963 THEN valuenum ELSE NULL END) AS ntprobnp
-- 氨基末端脑利钠肽前体,实际是BNP前体降解后的化学结构之一,可以理解为BNP的代谢产物,该项检查主要用于心脑血管疾病中,用于评估病情
INTO work.cardiac_marker_fixed
FROM mimiciv_hosp.labevents le
WHERE le.itemid IN
(
-- 51002, -- Troponin I (troponin-I is not measured in MIMIC-IV)
-- 52598, -- Troponin I, point of care, rare/poor quality
51003 -- Troponin T
, 50911 -- Creatinine Kinase, MB isoenzyme
, 50963 -- N-terminal (NT)-pro hormone BNP (NT-proBNP)
)
AND valuenum IS NOT NULL
GROUP BY le.specimen_id
;
关于官方衍生表的生成可以看之前的文章
手把手教会你认识跟安装MIMIC-IV物化视图
MIMIC-IV数据库衍生表格mimic_derived配置和使用