当你第一次打开MIMIC数据库,面对近百个数据表、数千个变量,是否感到无所适从?
想要研究脓毒症的预测因素,却不知道从哪张表开始找数据?
想要分析急性肾损伤的危险因素,却在海量数据中迷失方向?
这是每个MIMIC使用者的共同经历。不过别担心,今天我们将分享一套系统化的数据定位方法,帮助你在MIMIC数据库的“数据迷宫”中快速找到所需信息!
理解MIMIC数据库的整体结构
核心主键
MIMIC数据分散在多个不同的表格中,通过几个主键(标识符),能将不同表的数据关联起来:
-
subject_id:唯一病人(患者)标识
-
hadm_id:一次住院(hospital admission)标识
-
icustay_id:一次ICU入科标识
核心模块划分
MIMIC-IV采用了模块化设计,理解这个结构是快速定位数据的第一步:
-
Hosp模块(医院数据):来自全院电子健康记录,包括患者人口统计学、实验室检查、诊断代码、药物处方等

-
ICU模块(重症数据):来自ICU床旁记录,包括生命体征、呼吸机参数、输液药物、护理记录等

-
其他模块:急诊数据(ED)、影像数据(CXR)、文本数据(Note)
数据表的组织逻辑
MIMIC中的数据表通常按功能领域组织:
-
患者基本信息表:patients, admissions
-
生命体征表:vitalsign, chartevents
-
实验室数据表:labevents, microbiologyevents
-
治疗数据表:procedures, inputevents, outputevents
-
药物数据表:prescriptions, pharmacy
-
数据字典:d_icd_diagnoses, d_icd_procedures, d_labitems, d_items
数据定位的实用策略

实战示例:出血性卒中患者入院后首次血糖记录
目标变量:
-
目标变量:血糖
-
目标人群:出血性卒中患者
-
限定条件:入院后首次记录
操作步骤:
▶ 样本人群确定:
-
查询诊断变量字典d_icd_diagnoses筛选“出血性脑卒中”对应的icd编码
-
根据icd编码在诊断表格diagnoses_icd中筛选有该诊断的患者(subject_id和hadm_id)
-
查询检查变量字典d_labitems筛选血糖对应itemid
-
在实验室检查结果表labevents里根据itemid筛选血糖结果
-
根据hadm_id限定住院期间被诊断为出血性脑卒中的患者
-
根据检查时间charttime筛选首次检查结果
常见问题和解决方案
✔️ 同一个变量对应多个编码:仔细阅读数据字典中的描述,实验室指标检查label、fluid、category,筛选目标编码。不同编码对应变量单位可能不一致,需要仔细检查。
✔️ 错过相关变量:扩展筛选关键词,利用缩写、同义词等,或者截取部分字段以免漏掉关键变量。
✔️ 多个id(subject_id、hadm_id、stay_id)关联时应该选谁:根据筛选场景来决定,对患者进行筛选则选择subject_id,若是需要筛选患者符合条件的某次住院信息则根据hadm_id,如果需要筛选特定icu记录则选择stay_id。





评论列表