[ PROMPT_NODE_27094 ]
Pyhealth 数据集
[ SKILL_DOCUMENTATION ]
# PyHealth 数据集与数据结构
## 核心数据结构
### Event (事件)
单个医疗发生事件,包含以下属性:
- **code**: 医疗代码(诊断、药物、手术、实验室检查)
- **vocabulary**: 编码系统(ICD-9-CM, NDC, LOINC 等)
- **timestamp**: 事件发生时间
- **value**: 数值(用于实验室检查、生命体征)
- **unit**: 测量单位
### Patient (患者)
按时间顺序组织的就诊事件集合。每个患者包含:
- **patient_id**: 唯一标识符
- **birth_datetime**: 出生日期
- **gender**: 患者性别
- **ethnicity**: 患者种族
- **visits**: 就诊对象列表
### Visit (就诊)
医疗接触记录,包含:
- **visit_id**: 唯一标识符
- **encounter_time**: 就诊时间戳
- **discharge_time**: 出院时间戳
- **visit_type**: 就诊类型(住院、门诊、急诊)
- **events**: 该次就诊期间的事件列表
## BaseDataset 类
**关键方法:**
- `get_patient(patient_id)`: 获取单个患者记录
- `iter_patients()`: 遍历所有患者
- `stats()`: 获取数据集统计信息(患者、就诊、事件)
- `set_task(task_fn)`: 定义预测任务
## 可用数据集
### 电子健康记录 (EHR) 数据集
**MIMIC-III 数据集** (`MIMIC3Dataset`)
- 来自贝斯以色列女执事医疗中心的重症监护数据
- 40,000+ 重症监护患者
- 包含诊断、手术、药物、实验室结果
- 用法: `from pyhealth.datasets import MIMIC3Dataset`
**MIMIC-IV 数据集** (`MIMIC4Dataset`)
- 更新版本,包含 70,000+ 患者
- 改进了数据质量和覆盖范围
- 增强了人口统计学和临床细节
- 用法: `from pyhealth.datasets import MIMIC4Dataset`
**eICU 数据集** (`eICUDataset`)
- 多中心重症监护数据库
- 来自 200+ 家医院的 200,000+ 次入院记录
- 跨设施标准化的 ICU 数据
- 用法: `from pyhealth.datasets import eICUDataset`
**OMOP 数据集** (`OMOPDataset`)
- 观察性医疗结果伙伴关系 (OMOP) 格式
- 标准化通用数据模型
- 跨医疗系统的互操作性
- 用法: `from pyhealth.datasets import OMOPDataset`
**EHRShot 数据集** (`EHRShotDataset`)
- 小样本学习基准数据集
- 专门用于测试模型泛化能力
- 用法: `from pyhealth.datasets import EHRShotDataset`
### 生理信号数据集
**睡眠 EEG 数据集:**
- `SleepEDFDataset`: 用于睡眠分期的 Sleep-EDF 数据库
- `SHHSDataset`: 睡眠心脏健康研究数据
- `I