MIMIC-IV(Medical Information Mart for Intensive Care) 是一个开放的、大规模的医疗数据库,旨在促进医疗研究和开发的进展。该数据库涵盖了2008至2019年期间的近300,000名患者的临床数据,包括手术、治疗和疾病等方面的信息。数据中包含了包括生命体征、实验室检查、治疗过程、诊断结果、药物使用等大量的医疗信息。
本文主要介绍MIMIC-IV 2.2版本模块和数据库表、字段的一些大致情况,仅供参考。
MIMIC-IV数据库主要分为两个模块,分别是 Hosp 模块和 ICU 模块(其他模块本文不做讲解)
一、Hosp 模块介绍
Hosp模块提供从医院范围内的电子健康记录中获取的所有数据,这些数据主要在住院期间记录,有一些表格也包括来自医院外的数据。所涵盖的信息包括患者和入院信息、实验室测量、微生物学、药物管理和收费诊断等。
1、omr(医疗记录表)
在线医疗记录(OMR)表记录了电子健康记录中的杂项信息。
字段 | 中文字段 | 字段描述 | 字段类型 |
---|---|---|---|
subject_id | 患者编号 | subject_id是指定单个患者的唯一标识符。与单个subject_id相关联的任何行都属于同一个人 | INTEGER NOT NULL |
chartdate | 记录日期 | 记录观察结果的日期 | DATE NOT NULL |
seq_num | 序列数 | 唯一区分同一天记录的同一类型结果的单调递增整数。例如,如果两次血压测量发生在同一天,seq_num会按时间顺序排列 | INTEGER NOT NULL |
result_name | 结果属性名 | 每一行提供关于EHR中单个观察的详细信息。result_name提供了对观察结果的可人工解释的描述 | VARCHAR(100) NOT NULL |
result_value | 结果属性值 | result_value是与给定OMR观测相关联的值。例如,对于“血压”的result_name,field_value列包含记录的血压(120/80、130/70,依此类推) | TEXT NOT NULL |
2、provider(提供者编号表)
提供表列出了数据库中使用的未标识的提供者标识符,此表只有一个字段属性。
字段 | 中文字段 | 字段描述 | 字段类型 |
---|---|---|---|
provider_id | 提供编号 | provider_id列出了整个数据库中使用的提供者的所有可能标识符。提供者标识符遵循一致的模式:字母“P”,后跟三个数字,后跟两个字母或两个数字。例如,“P003AB”、“P00102”、“P1248B”等。提供者标识符是随机生成的,除了在数据库中唯一标识同一提供者之外,没有任何固有含义 | VARCHAR(10) NOT NULL |
3、admissions(入院信息表)
入院表提供了有关患者入院的信息。由于患者每次唯一的医院就诊都被分配了一个唯一的hadm_id,因此入院表可以被视为hadm_id的定义表。可用信息包括入院和出院的时间信息、人口统计信息、入院来源等。
字段 | 中文字段 | 字段描述 | 字段类型 |
---|---|---|---|
subject_id | 患者编号 | subject_id是指定单个患者的唯一标识符,与单个subject_id相关联的任何行都属于同一个人。该表可能有重复的subject_id,表示一名患者多次入院。ADMISSIONS表可以使用subject_id链接到PATIENTS表 | INTEGER NOT NULL |
hadm_id | 入院编号 | 该表的每一行都包含一个唯一的hadm_id,表示单个患者入院。hadm_id的范围从2000000到2999999 | INTEGER NOT NULL |
admittime | 入院时间 | admittime提供患者入院的日期和时间 | TIMESTAMP NOT NULL |
dischtime | 出院时间 | dischtime提供患者出院的日期和日期 | TIMESTAMP |
deathtime | 死亡时间 | deathtime表示患者住院死亡时间,只有当患者在医院去世时,死亡时间才会出现 | TIMESTAMP |
admission_type | 入院类型 | admission_type表示对入院的紧迫性进行分类。有9种可能性:‘AMBULATORY OBSERVATION’, ‘DIRECT EMER.’, ‘DIRECT OBSERVATION’, ‘ELECTIVE’, ‘EU OBSERVATION’, ‘EW EMER.’, ‘OBSERVATION ADMIT’, ‘SURGICAL SAME DAY ADMISSION’, ‘URGENT’ | VARCHAR(40) NOT NULL |
admit_provider_id | 标识符 | admit_provider_id为收治患者的医生或者护理专业人员的匿名唯一标识符。标识符遵循一致的模式:字母“P”,后跟三个数字,后跟两个字母或两个数字。例如,“P003AB”、“P00102”、“P1248B”等。提供者标识符是随机生成的,除了在数据库中唯一标识同一提供者之外,没有任何固有含义 | VARCHAR(10) |
admission_location | 入院位置 | admission_location表示患者被接收到医院的具体位置,如急诊室。请注意,由于急诊室在技术上是一个诊所,通过急诊室入院的患者通常将其作为入院地点 | VARCHAR(60) |
discharge_location | 出院位置 | discharge_location表示患者出院后的位置 | VARCHAR(60) |
insurance | 保险类型 | insurance表示患者的保险类型 | VARCHAR(255) |
language | 语种 | language表示患者的语种 | VARCHAR(10) |
marital_status | 婚姻状况 | marital_status表示患者的婚姻状况 | VARCHAR(30) |
race | 种族 | race表示患者的种族情况 | VARCHAR(80) |
edregtime | 急诊留观时间 | edregtime表示患者登记进入急诊科的日期和时间 | TIMESTAMP |
edouttime | 急诊出观时间 | edouttime表示患者登记离开急诊科的日期和时间 | TIMESTAMP |
hospital_expire_flag | 院内死亡标记 | hospital_expire_flag表示患者是否在住院时间内死亡。1表示在医院中死亡,0表示存活到出院 | SMALLINT |
其中,保险、语言、婚姻状况和种族列提供了特定住院患者的人口统计信息。请注意,由于每次入院都会记录这些数据,因此这些数据可能会随住院时间而变化。
4、d_hcpcs(代码定义表)
d_hcpcs表用于获取hcpcsevents表中使用的代码定义。这些概念主要对应于医院计费,并且大多是CPT代码。注意:并非所有代码定义都可用。
字段 | 中文字段 | 字段描述 | 字段类型 |
---|---|---|---|
code | 代码 | 唯一表示事件的五个字符的代码 | CHAR(5) NOT NULL |
category | 代码类别 | category表示代码分类 | SMALLINT |
long_description | 长描述 | long_description表示给定行列出的代码的文本描述 | TEXT |
short_description | 短描述 | short_description表示给定行列出的代码的文本描述 | VARCHAR(180) |
5、d_icd_diagnostics(诊断代码索引表)
d_icd_diagnostics表定义了国际疾病分类(ICD)第9版和第10版的诊断代码。这些代码在患者住院结束时获得,用于支付医院所提供的护理费用。
字段 | 中文字段 | 字段描述 | 字段类型 |
---|---|---|---|
icd_code | 国际定义疾病编码 | icd_code表示世界卫生组织制定的国际统一的疾病分类方法,是一种字母和数字相结合的编码 | CHAR(7) NOT NULL |
icd_version | 疾病编码版本号 | 此编码系统有两个版本:版本9(ICD-9)和版本10(ICD-10)。这些可以使用icd_version列进行区分。一般来说,ICD-10代码更详细,尽管存在将ICD-9代码转换为ICD-10码的代码映射(或“交叉步”)。 ICD-9和ICD-10代码通常都用十进制表示。解释ICD代码时不需要此小数;即“0010”的icd_code等效于“001.0”。 ICD-9和ICD-10代码有不同的格式:ICD-9代码是5个字符长的字符串,完全是数字(前缀为“E”或“V”的代码除外,这些代码用于外部伤害原因或补充分类)。重要的是,ICD-9代码作为字符串保留在数据库中,因为代码中的前导0是有意义的。 ICD-10代码长3-7个字符,前缀总是一个字母,后面跟着一组数值 |
INTEGER NOT NULL |
long_title | 编码含义 | long_title提供了ICD代码的含义。例如,ICD-9代码0010的标题很长,是“霍乱弧菌引起的霍乱” | VARCHAR(255) |
6、d_icd_procedures(手术操作索引表)
d_icd_procedures表定义了国际疾病分类(ICD)程序代码。这些代码在患者住院结束时分配,用于支付医院所提供的护理费用。
字段 | 中文字段 | 字段描述 | 字段类型 |
---|---|---|---|
icd_code | 国际定义疾病编码 | icd_code表示世界卫生组织制定的国际统一的疾病分类方法,是一种字母和数字相结合的编码 | CHAR(7) NOT NULL |
icd_version | 疾病编码版本号 | 此编码系统有两个版本:版本9(ICD-9)和版本10(ICD-10)。这些可以使用icd_version列进行区分。一般来说,ICD-10代码更详细,尽管存在将ICD-9代码转换为ICD-10码的代码映射(或“交叉步”)。 ICD-9和ICD-10代码通常都用十进制表示。解释ICD代码时不需要此小数;即“0010”的icd_code等效于“001.0”。 ICD-9和ICD-10代码有不同的格式:ICD-9代码是5个字符长的字符串,完全是数字(前缀为“E”或“V”的代码除外,这些代码用于外部伤害原因或补充分类)。重要的是,ICD-9代码作为字符串保留在数据库中,因为代码中的前导0是有意义的。 ICD-10代码长3-7个字符,前缀总是一个字母,后面跟着一组数值 |
INTEGER NOT NULL |
long_title | 编码含义 | long_title提供了ICD代码的含义。例如,ICD-9代码0010的标题很长,是“霍乱弧菌引起的霍乱” | VARCHAR(255) |
7、d_labitems(化验项目索引表)
d_labitems表是对所有化验项目的描述。d_labitems表包含了与MIMIC数据库中的实验室测量相关联的所有itemid的定义。labelvents中的所有数据都链接到d_labitems表。医院数据库中的每个唯一(流体、类别、标签)元组都在该表中分配了一个条目ID,使用该条目ID有助于高效存储和查询数据。
其中实验室数据包含收集并记录在医院实验室数据库中的信息。这包括在医院内的病房和医院外的诊所进行的测量。
字段 | 中文字段 | 字段描述 | 字段类型 |
---|---|---|---|
itemid | 化验项目编号 | 化验项目概念的唯一标识符。itemid对每一行都是唯一的,可用于标识与特定概念相关联的标签中的数据 | INTEGER |
label | 项目标签 | 标签列描述了由itemid表示的概念 | VARCHAR(50) |
fluid | 流体类型 | fluid表示进行测量的流体物质。例如,经常对血液进行化学测量,血液在本栏中被列为“血液”。这些测量中的许多也可以在其他液体上获得,如尿液,本专栏区分了这些不同的概念 | VARCHAR(50) |
category | 化验类型 | category提供了关于测量类型的更高级别的信息。例如,“ABG”类别表示测量是动脉血气 | VARCHAR(50) |
8、diagnoses_icd(诊断代码表)
在常规医院护理期间,医院会向患者收取与住院相关的诊断费用。该表包含患者在住院期间使用ICD-9和ICD-10本体的所有诊断记录。
字段 | 中文字段 | 字段描述 | 字段类型 |
---|---|---|---|
subject_id | 患者编号 | subject_id是指定单个患者的唯一标识符,与单个subject_id相关联的任何行都属于同一个人 | INTEGER NOT NULL |
hadm_id | 入院编号 | 该表的每一行都包含一个唯一的hadm_id,表示单个患者入院。hadm_id的范围从2000000到2999999 | INTEGER NOT NULL |
seq_num | 诊断顺序号 | seq_num表示分配给诊断的优先级。优先级可以被解释为对哪些诊断是“重要的”的排名。例如,被诊断为败血症的患者必须将败血症作为他们的第二种疾病。第一种情况必须是传染源。对低优先级诊断进行“正确”排序也不那么重要(例如,第5到第10个诊断代码的优先级可能没有正确的排序) | INTEGER NOT NULL |
icd_code | 国际定义疾病编码 | icd_code表示世界卫生组织制定的国际统一的疾病分类方法,是一种字母和数字相结合的编码 | VARCHAR(7) |
icd_version | ICD版本号 | 此编码系统有两个版本:版本9(ICD-9)和版本10(ICD-10)。这些可以使用icd_version列进行区分 | INTEGER |
9、drgcodes(患者诊断类别表)
该表是代码住院的计费诊断类别组(DRG)代码。医院使用诊断类别组(DRG)来报销患者的住院费用。这些代码与患者住院的主要原因相对应。
字段 | 中文字段 | 字段描述 | 字段类型 |
---|---|---|---|
subject_id | 患者编号 | subject_id是指定单个患者的唯一标识符,与单个subject_id相关联的任何行都属于同一个人 | INTEGER |
hadm_id | 入院编号 | 该表的每一行都包含一个唯一的hadm_id,表示单个患者入院。hadm_id的范围从2000000到2999999 | INTEGER |
drg_type | 诊断类别 | DRG诊断类别,DRG是根据患者入院诊断、手术情况、年龄、性别等因素进行分类的一种方法,用于决定医院住院费用的支付 | VARCHAR(4) |
drg_code | 诊断编码 | DRG诊断编码,用于标识具体的DRG诊断类别 | VARCHAR(10) |
description | 描述 | 给定诊断编码的描述 | VARCHAR(195) |
drg_severity | 严重程度 | drg_severity分为4个等级,用整数表示,分别表示严重程度高低 | SMALLINT |
drg_mortality | 死亡率 | drg_mortality分为4个等级,用整数表示,分别表示死亡率大小 | SMALLINT |
10、emar(患者服用药物表)
EMAR表用于记录单个患者服用某种药物的情况。该表中的记录由床边护理人员扫描与药物和患者相关的条形码填充。
字段 | 中文字段 | 字段描述 | 字段类型 |
---|---|---|---|
subject_id | 患者编号 | ubject_id是指定单个患者的唯一标识符,与单个subject_id相关联的任何行都属于同一个人 | INTEGER NOT NULL |
hadm_id | 入院编号 | 该表的每一行都包含一个唯一的hadm_id,表示单个患者入院。hadm_id的范围从2000000到2999999 | INTEGER |
emar_id | 服用药物编号 | EMAR表的标识符。emar_id是emar中每条记录的唯一标识符。emar_id由subject_id和emar_seq组成,其模式如下:“subject_id-emar-seq” | VARCHAR(25) NOT NULL |
emar_seq | 编号序列 | EMAR表的标识符。emar_id是emar中每条记录的唯一标识符。emar_id由subject_id和emar_seq组成,其模式如下:“subject_id-emar-seq” | INTEGER NOT NULL |
poe_id | 订单输入编号 | 将emar中的管理与poe中的订单和处方联系起来的标识符 | VARCHAR(25) NOT NULL |
pharmacy_id | pharmacy标识符 | 将emar中的管理与pharmacy表中的药房信息联系起来的标识符 | INTEGER |
enter_provider_id | 输入emar标识符 | enter_provider_id为将信息输入EMAR系统的提供者提供匿名标识符。提供者标识符遵循一致的模式:字母“P”,后跟三个数字,后跟两个字母或两个数字。例如,“P003AB”、“P00102”、“P1248B”等。提供者标识符是随机生成的,除了在数据库中唯一标识同一提供者之外,没有任何固有含 |