血压预测常用数据集整理
前言
因工作原因,笔者需要搜集血压相关数据做研究,刚开始的时候对这个领域比较陌生,费了很大功夫才找到可用的数据集,经过一年半的工作,也积累了一些数据集,就用这篇博客来来总结一下,以便有需要时用到,同时也作为之前工作一个回顾/font>
一、关于血压预测
因工作需要,笔者搜集了大量血压(BP)预测相关的研究论文 (参见博客:链接),除了极少部分paper是基于个体的行为数据做血压BP预测外,其余绝大部分都是基于个体的生物医学信号/生理信号做BP预测。常用的信号有:PPG信号,ECG信号,auscultatory 听诊信号,Oscillometric 示波信号,等等。
下面对常用的数据集(包括下载链接,原始文章)作以总结。
二、常用数据集整理
MIMIC 系列数据集
该数据集应该是目前最大的一个数据集,里面包含了大量ICU病人的临床数据记录,该数据集从最初的MIMIC I 发展到现在的 MIMICIII, 数据越来越庞大。由于该数据集是一个噪声干扰严重的异源数据集,因此并不能直接应用于研究,因此有研究者基于MIMIC发布了其处理后的数据集版本,更加方便使用。
MIMIC I
该数据库包含72条完整记录以及MIMIC的所有121条记录的定期测量结果(“数字”),包括90位受试者中某些人的多次记录。 这些记录的长度各不相同,每个记录平均持续约40小时。
数据集下载:链接
数据集相关文章:
1.Circulation-2000-PhysioBank, PhysioToolkit, and PhysioNet_Components of a New Research Resource for Complex Physiologic Signals
MIMIC II
MIMIC-II数据库包含25,328张重症监护病房住宿。调查人员收集了有关重症监护病房住院时间的详细信息,包括实验室数据,治疗干预概况等。
数据集下载:链接
数据集相关文章:
1.Critical Care Medicine-2011-Multiparameter Intelligent Monitoring in Intensive Care II (MIMIC-II): A public-access intensive care unit database;
MIMIC III
该数据库是对广泛使用的MIMIC-II的更新数据库(MIMIC-III整合了患者身份不明的马萨诸塞州波士顿的贝丝以色列女执事医疗中心综合临床数据, 关于该数据库的详细介绍请参考链接。
数据集下载:链接
数据集相关文章:
1.Scientific Data-2016-MIMIC-III, a freelyaccessible critical care database;
注:
~~关于WFDB软件包~~
WFDB软件包是为了更有效使用PhysioBank数据而开发的专用软件,它的主要组件是WFDB库,大约75个WFDB应用程序(用于信号处理和自动分析)以及WAVE软件(用于查看,注释和交互式分析波形数据)。 软件包中还包括一整套文档,包括教程和参考手册。
WFDB适用各种操作系统(Windows, Linux, Solaris等)以及各种IDE 环境(Matlab, Python等),详细安装教程:链接
~~关于在线访问MIMIC 系列数据库 ~~
除了先下载数据,然后再处理数据这种方式外,还可以在线获取并处理数据。
以Python读取mitdb数据库为例,Python中的wfdb包(不是上面提到的WFDB)提供了在线访问Physionet中数据的机制。
示例代码一:
import wfdb
import matplotlib.pyplot as plt
#1.1 rdsamp在线读取数据(指定通道,指定起/止索引)
signal, field = wfdb.rdsamp('100', channels=[0, 1], sampfrom=0, sampto=1500, pb_dir='mitdb/') # pb_dir:数据库, 第一个参数为记录名称, signal为[Mx2]的信号数据,field为字段信息
print('signal:', signal)
print('field:', field)
plt.figure(1)
plt.plot(signal) # 两个通道数据显示在一副图中
plt.ylabel(field['units'][0])
plt.legend([field['sig_name'][0], field['sig_name'][1]])
plt.show()
示例代码二:
#1.2 rdrecord在线读取数据,返回数据类型与rdsamp不同
record = wfdb.rdrecord('100', sampto=3600, pb_dir='mitdb/') #读取记录, 信号数据为record.p_signal
record_header = wfdb.rdheader('100', pb_dir='mitdb/')
annotation = wfdb.rdann('100', 'atr', sampto=3600, pb_dir='mitdb/') #读取标记read annotation
plt.figure(2)
#wfdb.plot_wfdb(record=record) #只显示信号,两个通道数据显示在不同子图中
wfdb.plot_wfdb(record=record, annotation=annotation, title='Record 100 from MIT-BIH Arrhythmic database', time_units='seconds') #显示信号以及标记
print('record: ', record)
print('record_header: ', record_header)
print('annotation: ', annotation.__dict__)
print('signal: ', record.p_signal) #
plt.show()
示例代码三:
#从指定目录读取数据
record = wfdb.rdrecord('data/mimicdb/alpha.physionet.org/files/mimicdb/1.0.0/037/037', sampto=500) # pb_dir:数据库, 第一个参数为记录名称, signal为[Mx2]的信号数据,field为字段信息
record_header = wfdb.rdheader('data/mimicdb/alpha.physionet.org/files/mimicdb/1.0.0/037/037')
print('signal:', record.p_signal)
print('field:', record_header)
plt.figure(1)
plt.plot(record.p_signal)
plt.figure(2)
#wfdb.plot_wfdb(record=record)
plt.show()
UCI_BP
该数据集基于MIMIC II发展而来,对其做了一些预处理和验证,该数据位于matlab的v7.3 mat文件中,因此应在其他环境中使用新版本的matlab或HDF库打开该数据集。该数据集由矩阵的单元格cell阵列组成,每个单元格cell都是一个record (矩阵形式保存)。 在每个矩阵中,每一行对应一个信号通道:
1:PPG信号,FS = 125Hz; 指尖的光电容积描记器
2:ABP信号,FS = 125Hz; 有创动脉血压(mmHg)
3:ECG信号,FS = 125Hz; 来自通道II的心电图
值得一提的是该数据集版本由于其易用性被广泛使用。
数据集下载:链接
数据集相关文章:
1.ISCAS’15-Cuff-Less High-Accuracy Calibration-Free Blood Pressure Estimation Using Pulse Transit Time;
昆士兰生命体征数据集 Queensland Vital Signs Dataset
监测数据来自32例个体,持续时间从13分钟到5小时(平均105分钟)为期4周。 32例包括25例麻醉药(20支气管插管,5支喉管插管面罩气道),3种脊麻药和4种镇静剂案件。 所有患者均使用了动脉血压监测病例。该数据集的一个特点是:除了数值数据,作者还保存了相应的数据信号可视化结果,方便查看和使用。
数据集下载:链接
数据集相关文章:
1.Technical communication-2010-University of Queensland Vital Signs DatasetDevelopment of an Accessible Repository ofAnesthesia Patient Monitoring Data for Research;
桂林医院数据
该数据集包含来自219位受试者的657个数据段。 数据集的平均年龄范围为2也89岁,并且记录了包括高血压和糖尿病在内的缓解疾病的记录。
数据集下载:链接
数据集相关文章:
1.Scientific Data-2018-A new, short-recorded photoplethysmogram dataset for blood pressure monitoring in China;
2.Scientific Data-2018-Data-An optimal filter for short photoplethysmogram signals;
注:该篇文章为原作者所写,介绍了数据集的预处理(滤波)。
Vital signals and reference blood pressure values acquired from 26 subjects
该数据集提供了从26位受试者获取的生命信号和参考血压值的集合。 对于此数据集中的每个主题,获取心电图(PCG),心电图(ECG)和光体积描记图(PPG)信号。 除了获取每个对象的信号外,还测量了多个参考BP。 在这里,来自力感测电阻器(FSR)的信号(放置在BP参考装置的袖带下)用于区分参考BP测量的精确力矩,这些力矩对应于袖带的充气和放气。 来自FSR的信号也包含在我们的数据集中。 对于每个对象,还记录年龄,体重和身高。
数据集下载:链接
数据集预处理代码:链接
数据集相关文章:
1.A. Esmaili, M. Kachuee, M. Shabany, Nonlinear Cuffless Blood Pressure Estimation of Healthy Subjects Using Pulse Transit Time and Arrival Time, IEEE Transactions on Instrumentation and Measurement, 2017;
2.A. Esmaili, M. Kachuee, M. Shabany, Non-invasive Blood Pressure Estimation Using Phonocardiogram, IEEE International Symposium on Circuits and Systems (ISCAS’17), 2017.;
总结
希望能对大家有帮助 ,后续再补充。