MIMIC数据库,如何提取患者的治疗信息(药物治疗和非药物治疗)?
MIMIC数据库的治疗信息提取,分药物治疗及非药物治疗数据。
MIMIC数据库的治疗信息提取,分药物治疗及非药物治疗数据。
会python的同学可以看这篇文章:
MIMIC数据库, 使用Python研究万古霉素的剂量 (一)
我们来看看药物治疗的药物相关信息如何直接SQL提取
我们以第一次入住ICU肺栓塞患者是否使用万古霉素为例
一、找出万古霉素itemid,联表inputevents查询
- drug:药物的名称
- numobs:药物数量
以下内容将被删除,因为我们只关注静脉注射的万古霉素:
- Vancomycin 25mg/mL Ophth Soln - eye use
- 万古霉素 25mg/mL Ophth Soln - 眼睛使用
- Vancomycin Enema - rectal use
- 万古霉素灌肠 - 直肠使用
- Vancomycin Intrathecal - cerebral spinal fluid injection
- Vancomycin Intraventricular - cerebral shunt injection
- 脑室内注射万古霉素 - 脑分流注射
- Vancomycin Oral Liquid - oral use
- 万古霉素口服液 - 口服使用
- Vancomycin fortified opthalmic- eye use
- 万古霉素强化眼科 - 眼睛使用
- Vancomycin ophthalmic 50mg/ml - eye use
- 万古霉素眼用 50mg/ml - 眼睛使用
- Vancomycin ophthalmic solution - eye use
- 万古霉素滴眼液 - 眼睛使用
- vancoMYCIN for inhalation - nasal use
- 吸入用万古霉素 - 鼻腔使用
- vancoMYCIN for nasal inhalation - nasal use
- 鼻吸入用万古霉素 - 鼻腔使用
添加SQL
drug in
(
'NEO*IV*Vancomycin', 'Vancocin', 'Vancomycin',
'Vancomycin ', 'Vancomycin Antibiotic Lock',
'Vancomycin Desensitization', 'Vancomycin HCl'
)
接下来,我们需要确定保留实验室事件labevents表和d_items表中的 哪些itemid
我们只需要Trough值的万古霉素
所以我们可以给SQL加上
itemid in
(
227455, 225798, 226064
)
所以我们知道了itemid是225798
二、从输出表获取检查数据mimiciv_icu.inputevents表
这段代码用到了SQL代码的Groud by函数聚合, 不理解的同学查看这两篇文章
补充下groud by函数的使用语法
SELECT column1, column2, aggregate_function(column3)
FROM table_name
GROUP BY column1, column2;
在这个语法中:column1和column2是您希望根据其值进行分组的列。
aggregate_function是您希望对每个组应用的聚合函数,比如SUM、AVG、COUNT等。
column3是您希望对其应用聚合函数的列。
GROUP BY子句将相同值的行分组到一起,并将它们视为一个组。然后,对每个组应用聚合函数,并将计算结果作为查询结果的一部分返回。
代码解释:
- 创建了一个名为t1的表,其中包含了被诊断为肺栓塞的患者的subject_id和hadm_id。这是通过查询mimiciv_hosp.diagnoses_icd表中具有特定诊断代码('41519','I2699','41511','41512','I2692','I2690','41513','I2609','I2694','I2602','I2693','67382')的记录来实现的。
- 然后,使用t1表,通过内连接(INNER JOIN),将t1表与mimiciv_derived.icustay_detail表连接,获取了包含了肺栓塞患者的ICU停留详细信息的结果集。只选择了第一次进入ICU的记录(i.first_icu_stay='t')。
- 最后,创建了一个名为y2的表,其中包含了肺栓塞患者接受万古霉素治疗的信息。通过左连接(LEFT JOIN)将t1表与mimiciv_icu.inputevents表连接,条件是患者的subject_id和stay_id相匹配,并且万古霉素的itemid为'225798'。然后,对符合条件的记录按照subject_id、hadm_id、stay_id和icu_intime进行分组。在分组的基础上,对万古霉素的剂量进行汇总,并使用CASE语句将剂量总和不为空的记录标记为1,为空的记录标记为0。
结果:这样我们就能根据患者在icu期间万古霉素使用总剂量是否为0,将肺栓塞患者分为使用万古霉素组与非使用万古霉素组。
mimic数据库使用介绍:
MIMIC数据库提取教程-提取某种疾病下的患者人口统计学指标
MIMIC-IV数据库衍生表格mimic_derived配置和使用
MIMIC-IV数据分析 - 使用Python进行心脏病案例分析
MIMIC-IV数据分析 - 使用Python进行心脏病案例分析(二)
MIMIC-IV数据分析 - 使用R语言探索icustay_detail视图
MIMIC数据提取教程 - 如何提取患者入ICU后第一个WBC和SpO2值
MIMIC数据提取教程 - 提取入住ICU第一天生命体征(血氧饱和度、血压、呼吸、体温)
MIMIC数据提取教程 - 提取血管紧张素受体阻滞剂(ARB)药物
MIMIC-IV-ED适合科研小白的安装方法(提供数据集下载)
MIMIC数据库, 使用Python研究万古霉素的剂量 (一)
MIMIC-IV官方视图解析 - cardiac_marker心脏标记表
MIMIC-IV官方视图解析 - AKI 肌酐 (kdigo_creatinine、kdigo_stages)