信息速览

ICES(安大略省健康数据平台)— 加拿大人口级链接式健康行政数据平台 AI-Ready Wikipedia
INFOBOX
| 字段 | 内容 |
|---|---|
| 数据集名称 | ICES 数据仓库(ICES Data Repository) |
| 英文全称 | ICES(formerly Institute for Clinical Evaluative Sciences)Data Repository |
| 别名/简称 | ICES Data Repository;ICES DAS;旧名 Institute for Clinical Evaluative Sciences |
| 疾病分类(ICD-11) | 全疾病谱(示例:5A11 型 2 型糖尿病;BA41 急性心肌梗死;BD10 心力衰竭;DD71 克罗恩病) |
| SNOMED CT | 示例:44054006(2 型糖尿病);22298006(急性心肌梗死);195967001(哮喘);69896004(类风湿关节炎) |
| 数据模态 | 省级健康行政数据:医保理赔、住院摘要、急诊/门诊、处方调配、实验室结果、疾病与人口登记 |
| AI 任务类型 | 表型提取、再入院/死亡率预测、药物警戒信号检测、费用与利用预测、目标试验模拟、健康不平等分析 |
| 样本总数 | 90+ 个数据集、278 亿条记录(截至 2022-10 re3data 登记);覆盖 1,340–1,400 万人口 |
| 数据大小 | 104 个库、528,197 个变量、4,627.94 GB(截至 2022-10) |
| 数据格式 | SAS 数据集(SAS7BDAT)与 Microsoft SQL Server 数据库 |
| 许可证 | ICES 及各数据托管方版权数据;依 PHIPA 规定实体授权与 ICES DAS 协议使用,非公开许可 |
| 访问级别 | 申请审核(ICES DAS 流程:可行性评估 + 伦理审批 + 隐私审查 + DAS 协议签署) |
| DUO 标签 | IRB(需伦理批准)、GS(地理/司法管辖区限制:仅可在 ICES 安全环境分析) |
| 语言 | 元数据与文档以英文为主(加拿大官方双语环境中含部分法语材料);数据编码为英文 |
| 首发日期 | 1992-04(机构成立并获数据授权;最早登记数据回溯至 1964 年 OCR) |
| 最后更新 | 核心库月度滚动更新(OHIP/ODB 每月、OLIS 每季;截至 2026-09 数据字典快照) |
| 发布机构 | ICES(独立非营利研究机构,安大略省卫生厅核心拨款) |
| 官方主页 | https://www.ices.on.ca |
| 下载地址 | 无公开下载;访问入口 https://www.ices.on.ca/submit-a-request(ICES DAS 申请) |
| DOI | 平台无统一 DOI;数据资源画像 DOI:10.23889/ijpds.v4i2.1135 |
| 引用规模 | 机构五年产出 2,200+ 篇同行评审论文与 238 份 AHRQ 报告(ICES 官方,截至 2020-03) |
| AI 就绪度评分 | ⭐⭐⭐(3/5)— 数据质量与链接能力世界顶尖、有公开数据字典,但不可公开下载、需远程安全环境操作、无官方预处理脚本与数据划分 |
| 页面状态 | published |
§0 E-E-A-T 审核与免责
本页面由 [千方病案医学编辑部] 组织撰写,交叉审核范围:§2 医学背景(ICD-11 与 SNOMED CT 映射、疾病流行病学)、§7 偏倚分析。
[千方病案医学编辑部交叉审核] 医疗 AI 数据工程师,审核范围:§4 DAIMS 数据字典、§5 数据划分策略、§6 预处理 Pipeline 和坑点。
审核日期:2026-09-05
医疗免责声明:本页面内容仅为医疗数据集的技术性介绍与使用指南,不构成任何医疗建议、诊断依据或治疗方案。临床决策请务必遵循执业医师的判断及所在机构的诊疗规范。
技术免责声明:本页面涉及的代码示例、数据处理流程与工具链配置均在特定环境下验证,实际运行可能因依赖版本、数据快照与基础设施差异而产生不同结果,使用者应自行承担验证与适配责任。
数据使用合规声明:本页面介绍的数据资源受到著作权、隐私法规(含加拿大安大略省《个人健康信息保护法》PHIPA)与数据使用协议的多重约束。任何获取、处理与分析行为都必须遵守原始数据托管方的许可条款、伦理审查要求与所在司法管辖区的法律法规。
§1 数据集概览
§1.0 📌 30 秒速览
这是什么? ICES 是加拿大安大略省的独立非营利健康数据研究机构(1992 年 4 月成立,2018 年 10 月正式以缩写 ICES 为法定名称)。它持有该省 1,340 万至 1,400 万居民的链接式健康行政数据仓库:每次 OHIP 医师服务理赔、每次住院出院摘要(CIHI-DAD)、每次急诊到访(NACRS)、每张政府报销处方(ODB)都在其中,并以稳定加密键实现个体级跨库链接(ICES 官方)。
为什么重要? 行政数据意味着"零选择偏倚的全省窗口"——不做研究设计、不招募患者,系统在运营中自动记录一切。ICES 以此支持药物警戒(推动 Vioxx 撤市的心衰研究)、健康政策评估与全人群预后研究,五年产出 2,200+ 篇同行评审论文,是全世界被反复仿效的"人口级数据链接"范式的发源地之一(Vermeulen et al., 2020)。
我能用它做什么? 经 ICES DAS 申请审核后,你可在远程安全环境(IDAVE/RAE)中以 SAS/R/Python 构建全人群队列:疾病表型提取、药物安全信号检测、再入院与死亡预测、目标试验模拟、健康不平等分析。你不能下载数据离开环境,也不能做个体级临床决策支持——这是"在沙箱里做全省研究"的平台(ICES DAS)。
§1.1 摘要
ICES 的技术本质是一条"行政数据流水线 + 个体级链接 + 沙箱分析"的范式:安大略省单一支付方全民医疗系统在运营中持续产生理赔、出院摘要、处方与登记记录;安省卫生厅、CIHI、Cancer Care Ontario 等数据托管方依数据共享协议将其传入 ICES;受严格访问限制的 ICES 链接团队以注册人口库(RPDB)为脊柱,用 Fellegi-Sunter 概率链接与确定性匹配将各源挂接到 10 位加密 IKN 键上,形成约 90 个数据集、278 亿条记录、528,197 个变量的可链接仓库。治理端,ICES 是 PHIPA 2004 下的"规定实体"(Section 45/44 授权),其隐私实践每三年接受安省信息与隐私专员审查。研究端,内部科学家进入 RAE 高性能环境,外部研究者经 DAS 流程(中位 37 天数据就绪)在 IDAVE 远程沙箱内分析,产出前须经再识别风险评估与小单元抑制(Vermeulen et al., 2020;ICES DAS)。
§1.2 战略价值
维度一:方法学范式的活化石。 ICES 证明了"研究型访问行政数据"可以在隐私监管框架内规模化运行 30 余年:从 1992 年获得前所未有的全省理赔数据授权,到 2018 年正式更名、再到 2014 年起通过 DAS 向第三方开放,它提供了一整套可借鉴的治理模板——规定实体地位、每三年隐私审查、公共咨询委员会、原住民数据主权协议。对建设省级/国家级健康数据平台的机构而言,ICES 是少数运行超过 30 年且持续产出的原型系统。
维度二:AI 研究的"真值底座"。 与单中心 EHR 不同,ICES 的患者入组不以"到过某医院"为条件,而是"居住在安大略"这一地理标准,因此队列选择偏倚极小、死亡与迁出可完整追踪。它适合回答 EHR 无法回答的问题:全省发病率的长期趋势、药物在真实世界老年人群中的罕见风险、医疗政策变化的因果效应。其衍生慢病队列(糖尿病、高血压、心衰等)经图表审核验证,为机器学习提供了可复现的人群级标签来源。
维度三:隐私工程的社会实验场。 ICES 每三年接受安省信息与隐私专员(IPC)对其全部政策、实践与流程的审查批准,并设有公共咨询委员会与原住民数据主权协议。它把"研究型二次利用"与"公众社会许可"制度化对接:2019 年发表的公众态度研究(CMAJ Open)直接反向塑造了其数据使用政策——尤其是对私部门参与的严格限制(ICES 新闻)。对任何计划建设"研究型数据可信通道"的机构,这条治理路径本身就是一份可研读的工程文档。
§1.3 同类数据集横向对比
| 数据集 | 规模 | 模态 | 标注/标签 | 与 ICES 的差异化 |
|---|---|---|---|---|
| ICES(本词条) | 1,340–1,400 万人口、278 亿条记录 | 理赔+住院+急诊+处方+登记+实验室 | 算法定义慢病队列(图表审核验证) | 全省单一支付方、个体级链接最完整、沙箱访问 |
| NHS HES | 英格兰年度 2,150 万住院事件 | 住院+门诊+急诊统计 | ICD-10/OPCS-4 编码 | 只按活动统计交付,链接需经 NHS DARS;处方与理赔不覆盖 |
| CMS Medicare LDS | 美国联邦医保 6,000 万+受益人子集 | 理赔+处方(Part D)+登记 | 无人工标注 | 商业化申请制(ResDAC),仅 5% 样本或受限子集;无实验室结果 |
| SNDS | 法国 6,600 万人口 | 理赔+住院+死亡+用药 | 算法表型 | 门槛更低的国家级平行范式;处方覆盖全人群而非仅老年 |
| Swedish NPR | 瑞典 1,000 万人口 | 住院+门诊登记 | 登记级诊断 | 与 LISA 等社会登记联动更深;处方(Prescribed Drug Register)独立持有 |
| SEER-Medicare | 癌症登记+理赔链接子集 | 肿瘤登记+理赔 | 癌症部位/分期 | 肿瘤纵深更强,但仅限 65+ 癌症患者且申请周期长 |
| MIMIC-III | 约 4 万 ICU 患者 | ICU EHR+波形 | 重标注 | 开放下载、信号级细节丰富;无人群代表性,选择偏倚显著 |
§1.4 版本与沿革时间轴
| 时间 | 事件 | 来源 |
|---|---|---|
| 1991 | Naylor 提出创建提案(与 Jack Williams 联合),获安省卫生厅支持 | Dolan et al., 2012 |
| 1992-04 | ICES 成立于 Sunnybrook 校区,Naylor 任首任 CEO | ICES 官方 |
| 1994 | 首部研究图集《Patterns of Health Care in Ontario》发布 | Dolan et al., 2012 |
| 2004 | 安省 PHIPA 生效,ICES 获"规定实体"指定 | ICES |
| 2012 | 数据覆盖约 1,300 万人;成立 20 周年纪念综述 | Dolan et al., 2012 |
| 2013 | Michael Schull 出任 CEO;其后启动 DAS 与 HAIDAP 建设 | ICES 新闻 |
| 2014 | MOHLTC+CIHR SPOR 经费注入,扩展第三方访问 | Vermeulen et al., 2020 |
| 2018-10 | 正式以缩写 ICES 为法定名称 | ICES 新闻 |
| 2020 | 数据资源画像发表:90 个数据集、200 亿条记录、RAE/IDAVE/HAIDAP 架构公开 | Vermeulen et al., 2020 |
| 2025-11 | Schull 卸任,Astrid Guttmann 出任临时 CEO(2025-11-15 生效) | ICES 新闻 |
| 2026 | 数据字典月度快照:OHIP 更新至 2026-04、ODB 至 2026-06 | Data Dictionary |
§1.5 典型应用场景
- 药物警戒:以 65 岁以上 ODB 处方记录构建新用药者队列,联动 DAD/NACRS 结局检测罕见不良事件(如加替沙星致血糖异常研究直接导致药物退市)。
- 疾病表型与流行病学:用验证过的算法定义(ODD 糖尿病、OCCC 克罗恩/结肠炎)估计全省发病率/患病率趋势并识别高危人群。
- 目标试验模拟:在行政数据中模拟随机对照试验(基线协变量丰富、结局完整),回答伦理或成本上无法开展 RCT 的干预问题。
- 健康服务与政策评估:初级保健模式改革、医院强制报告制度、手术等待时间等政策效应的断点/中断时间序列分析。
- AI 预测模型研究:全省再入院、死亡、ICU 转入等预测任务的训练与内部验证,再以链接式数据完成跨省/跨国外部验证。
- 围产与儿童健康:以 BORN + DAD + OLIS 构建母子对队列,研究妊娠期暴露(如产前阿片使用)与儿童期结局的全链条关联。
- 移民健康:IRCC 落地记录与全谱系服务数据链接,量化不同移民类别、来源地与落地年代人群的健康转变与服务利用差异。
§2 医学背景
§2.1 核心研究病种与 ICD-11 编码表
ICES 仓库本身覆盖全疾病谱(以 ICD-10-CA/CCI 编码承载),其标志性衍生队列与研究主题对应以下 ICD-11 条目:
| 研究主题 | ICD-11 编码 | ICD-11 中文名 |
|---|---|---|
| 2 型糖尿病(ODD 队列) | 5A11 | 2 型糖尿病 |
| 急性心肌梗死(OMID 队列) | BA41 | 急性心肌梗死 |
| 心力衰竭 | BD10 | 心力衰竭 |
| 原发性高血压(HYPER 队列) | BA00 | 原发性高血压 |
| 哮喘 | CA23 | 哮喘 |
| 克罗恩病(OCCC 队列) | DD71 | 克罗恩病 |
| 溃疡性结肠炎(OCCC 队列) | DD72 | 溃疡性结肠炎 |
| 类风湿关节炎(ORAD 队列) | FA20 | 类风湿关节炎 |
| 阿尔茨海默病型痴呆 | 6D81 | 阿尔茨海默病 |
| 脑梗死(安大略脑卒中登记 OSR) | 8B11 | 脑梗死 |
§2.1b SNOMED CT 映射表
| 研究主题 | ICD-11 | SNOMED CT 码 | 概念名称 |
|---|---|---|---|
| 2 型糖尿病 | 5A11 | 44054006 | Diabetes mellitus type 2 |
| 急性心肌梗死 | BA41 | 22298006 | Myocardial infarction |
| 心力衰竭 | BD10 | 59621000 | Heart failure |
| 原发性高血压 | BA00 | 38341003 | Essential hypertension |
| 哮喘 | CA23 | 195967001 | Asthma |
| 克罗恩病 | DD71 | 34000006 | Crohn disease |
| 溃疡性结肠炎 | DD72 | 64766004 | Ulcerative colitis |
| 类风湿关节炎 | FA20 | 69896004 | Rheumatoid arthritis |
| 阿尔茨海默病 | 6D81 | 26929004 | Alzheimer disease |
| 脑梗死 | 8B11 | 42343007 | Cerebral infarction |
§2.2 疾病与人群背景
安大略是加拿大人口最多的省,2019 年人口约 1,470 万,实行单一支付方全民医疗(OHIP 承担全部必需的医师与医院服务)。这意味着:每一位合法居民自出生即进入理赔体系,出生(BORN 围产登记,2006 年起)、就诊(OHIP,1991 年 7 月起)、住院(CIHI-DAD,1988 年起)、急诊(NACRS,2000 年起)、65 岁后处方(ODB,1990 年 4 月起)、肿瘤诊断(OCR,1964 年起)直至死亡(ORGD,1990 年起)被全链条记录。这一"出生到死亡"的全覆盖使 ICES 成为慢性病流行病学、老年药物安全与全生命周期健康研究的理想底座(ICES About Data;Data Dictionary)。
流行病学上,安大略与加拿大整体一致地呈现老龄化与慢病负担加重:糖尿病、心血管疾病与痴呆是 ICES 衍生队列服务的主要病种。行政数据研究反复揭示的省级健康不平等(按收入五分位、城乡、移民身份)依赖 ON-Marg 边缘化指数与普查/移民数据的链接(Vermeulen et al., 2020)。
从研究设计视角看,行政数据的"人群"定义与临床数据根本不同:研究队列不是"来就诊的患者",而是"在某时间窗内居住于安大略且 OHIP 资格有效的人"。这带来三个直接推论——
- 分母确定:发病率/患病率的分母来自 RPDB 与人口估计(POP 库,1986 年起),无需另设对照抽样框架。
- 零招募偏倚:不存在"患者同意参与"的筛选,也不存在研究护士接触不到的暗角;唯一的入组障碍是数据资格(有效 OHIP 卡)。
- 全谱系竞争事件:死亡、迁出、非相关住院等竞争事件自然进入随访记录,使竞争风险分析成为常规操作而非补充分析。
移民健康是这套体系的独特优势场景:IRCC 落地记录(1985 年起)与理赔数据链接后,可按来源国、落地年份、难民/经济移民类别分层研究健康转变,这正是安大略移民队列系列研究的基础设施。
§2.3 临床任务定义
- 筛查/表型提取(phenotyping):用理赔、住院与处方编码的组合规则(如"4 年内 5 次以上 IBD 相关就诊")从全人群中识别病例,替代成本高昂的前瞻性筛查;精度以 PPV 量化并经图表审核验证。
- 诊断/风险分层:基于基线人口学、共病、既往利用构建风险评分(如活体肾供者风险评估进入国际指南)。
- 预后建模:全人群再入院、死亡、住院时长、ICU 转入预测;队列以"出院日"等管理时点而非研究招募日定义。
- 药物安全监测:新用药者设计(new-user design)+ 高维倾向评分,模拟目标 RCT 检测罕见不良反应。
- 政策因果推断:政策切换(初级保健付费模式、报告制度)作为准实验,支持差异中的差异与中断时间序列。
各任务的共同前置是"人群标准"(eligibility criteria):行政数据的任务定义本质上是在全人群中声明一个可重复的成员规则——年龄、资格有效期、索引事件编码、观察窗——随后一切特征与结局在该规则内机械生成。这套声明式范式(配合流程图报告)正是 RECORD 规范的核心,也是行政数据研究可复现性的来源。
§2.4 患者人群表
| 维度 | 内容 |
|---|---|
| 来源 | 安大略省全体 OHIP 资格居民(管理数据自动纳入,无自愿选择) |
| 时间跨度 | 住院 1988 年起、理赔 1991 年起、急诊 2000 年起;最早登记 1964 年 |
| 年龄 | 全生命周期(新生儿至百岁老人;BORN 围产记录自孕期起) |
| 性别 | 男/女二元管理记录,另含算法衍生 ethnicity 与移民数据(IRCC 1985 起) |
| 种族/民族 | 无直接采集;姓氏算法(南亚/中文等)与 ON-Marg 邻里指标为代理变量 |
| 就医类型 | 初级保健、专科门诊、急诊、住院、康复、长期护理、家庭护理全谱系 |
§2.5 临床价值
对临床医生与公卫决策者,ICES 的价值在于"把真实世界变得像试验一样可比":全人群入组消除了转诊偏倚,链接使暴露(处方)、协变量(既往利用与共病)与结局(死亡/住院)在同一键下对齐。其产出直接进入政策闭环——手机驾驶立法、Vioxx 撤市、Rowan’s Law 脑震荡立法、痴呆战略规划背后均有 ICES 证据支撑(ICES 研究影响)。对 AI 研究者,它提供了极少见的"训练分布=服务人群分布"的数据源,使模型的外部效度问题从"能否泛化"变为"如何跨司法管辖区迁移"。
§2.6 金标准表
| 项目 | 内容 |
|---|---|
| 划分 | 无官方 train/val/test 划分;研究自行按时间(开发/验证期)或地理(LHIN 卫生区)划分 |
| 标注方式 | 算法定义的衍生队列(编码规则)+ 图表审核验证(chart-validated) |
| 标注者 | ICES 临床科学家团队;定义经同行评审发表 |
| 性质 | 弱监督人群级标签:糖尿病定义 PPV 约 80%、高血压定义 PPV 约 87%(PPV 为检索文献口径) |
| 参考 | HiCOSTT 协议;Vermeulen et al., 2020 |
§3 数据集规格
§3.0 版本抉择矩阵
ICES 无"版本号"意义上的发布;选择发生在"申请哪些数据集与时间窗"层面:
| 你的需求 | 推荐数据组合 | 更新频率 | 理由 |
|---|---|---|---|
| 老年药物安全研究 | ODB + DAD + NACRS + RPDB(死亡) | 月更 | 65+ 处方近全量、住院/急诊结局完整 |
| 慢病流行病学趋势 | ODD/OCCC/ORAD 衍生队列 + OHIP | 年更 | 算法验证过、可复现、横跨 30 年 |
| 围产与儿童健康 | BORN + DAD + OLIS | 年更/季更 | BORN 覆盖全部医院分娩(2006 起) |
| 实验室暴露/结局 | OLIS + ODB + DAD | 季更 | 2007 年 10 月起全省实验室结果 |
| AI 模型训练 | DAS 研究就绪提取(CSV/SAS) | 一次性快照 | 提取后离开环境前需输出审查 |
§3.1 模态详情
- 医保理赔(OHIP):每行一条医师服务理赔,含服务日期、诊断(3 位 ICD-9)、服务代码(fee code)、医师与患者标识(加密);1991 年 7 月起,月更(Data Dictionary)。
- 住院摘要(CIHI-DAD):每行一次出院,含 ICD-10-CA 诊断(最多 25 个)与 CCI 操作编码、入院/出院日期、出院去向(RIW/资源强度权重);1988 年起(Vermeulen et al., 2020)。
- 急诊/门诊(NACRS):每行一次急诊到访或日间手术/门诊,含分诊级别(CTAS)、主诉与诊断;2000 年起。
- 处方(ODB):每行一次配药,含 DIN、数量、 days supply;覆盖 65 岁及以上(及特定低收入/长期护理人群);1990 年 4 月起,月更。
- 实验室(OLIS):检验项目订单与结果;2007 年 10 月起,季更。
- 登记与队列:OCR 肿瘤登记(1964 起)、BORN 围产登记(2006 起)、CORR 器官替代登记、ORGD 死因(1990 起)、IRCC 移民落地(1985 起)。
- 人口与地理:RPDB 人口脊柱(月更)、普查画像与 PCCF 邮编转换、ONMARG 边缘化指数、POP 人口估计。
补充三类常被忽略但研究价值高的持有:
| 数据集缩写 | 全称 | 内容要点 | 起始(快照口径) |
|---|---|---|---|
| ODD | Ontario Diabetes Dataset | 住院+处方+理赔算法定义的糖尿病队列 | Prevalence Apr 1991;Incidence Apr 1994 |
| OMID | Ontario Myocardial Infarction Dataset | 心梗事件级队列(图表验证) | Apr 1992–Mar 2017(无更新) |
| OCCC | Ontario Crohn’s and Colitis Cohort | 4 年 5 次就诊算法定义的 IBD 队列 | Prevalent Apr 1991 起 |
| ODR | Organ Donor Registry | 器官捐献登记 | Apr 1995 起 |
| ORRS | Ontario Renal Reporting System | 肾脏替代治疗登记 | Jan 2010 起 |
| POGONIS | Pediatric Oncology Group of Ontario Networked Information System | 儿科肿瘤网络信息系统 | Apr 1985 起 |
| OSR | Ontario Stroke Registry | 卒中登记(多周期) | 2002–2013、2019–2022 |
| PHYSNET | Ontario Multispecialty Physician Network dataset | 医师转诊网络(Stukel 2013 衍生) | Apr 2005 起 |
| PCPOP | Primary Care Population | 初级保健人口标识 | Apr 1995 起 |
| ORNGE | Ontario Patient Transport Database | 省级患者转运(急救直升机等) | Jan 2012–Dec 2023 |
完整清单以官方数据字典为准(月度快照,各条目标注最近更新日):http://datadictionary.ices.on.ca/。
§3.2 按子集样本数表
| 子集/数据集 | 记录规模 | 时间覆盖(数据字典快照) | 更新频率 |
|---|---|---|---|
| OHIP 理赔 | 数十亿级(仓库 278 亿条的最大来源之一) | Jul 1991–Apr 2026 | 月更 |
| CIHI-DAD 住院 | 数亿级 | 1988–至今 | 月/年更 |
| NACRS 急诊 | 数亿级 | 2000–至今 | 月/年更 |
| ODB 处方 | 数十亿级 | Apr 1990–Jun 2026 | 月更 |
| OCR 肿瘤登记 | 数百万级 | Jan 1964–Dec 2025 | 年更 |
| OLIS 实验室 | 十亿级 | Oct 2007–Dec 2025 | 季更 |
| BORN 围产 | 每年约 14 万分娩 | Apr 2006–至今 | 年更 |
| RPDB 人口库 | 2,100 万+ 累计人口 | 1991–至今 | 月更 |
注:ICES 未逐库公开行数;上表量级来自仓库总量 278 亿条(截至 2022-10,re3data)与各库更新频率(Data Dictionary)的合并推断,精确行数以 DAS 协商时的数据字典条目为准,官方未披露处不臆测。
§3.3 格式表
| 数据形态 | 格式 | 说明 |
|---|---|---|
| 仓库原生存储 | SAS 数据集 + Microsoft SQL Server | Vermeulen et al., 2020 |
| DAS 研究就绪提取 | SAS7BDAT / CSV | 经数据集创建计划生成 |
| 分析工具 | SAS、R、Python、Stata | RAE/IDAVE 预装 |
| 输出交付 | 审查后的汇总表/图(聚合级) | 单元格 <6 抑制 |
§3.4 存储大小
re3data 登记(截至 2022-10):104 个库、528,197 个变量、4,627.94 GB(约 4.6 TB)(re3data)。2020 年官方论文口径为约 90 个数据集、1,407 张表、200 亿条记录(Vermeulen et al., 2020)。单项目提取大小取决于研究设计,官方未披露典型值。
作为参照,2020 年官方论文披露 RAE 分析基础设施规模:超过 5 TB 数据、80+ CPU 核心、1.2 TB 内存、250+ 分析用户;其上叠加 IDAVE(远程外部访问)与 HAIDAP(AI/ML/NLP 高性能私云集群),三者共同构成"仓库—分析—加速"三层架构。对 AI 项目的含义是:算力上限由 HAIDAP 配额决定,而非研究者自带硬件;单项目提取通常远小于仓库总量(数 GB 至数十 GB 量级为常见经验区间,官方未披露)。
§3.5 标注方式
仓库核心数据为无人工标注的行政记录;"标签"以三种方式产生:
- 算法定义衍生队列(弱监督):如 ODD(住院+处方+理赔组合规则)、OCCC(4 年内 5 次就诊)、哮喘(1 次住院或 2 次门诊)。
- 图表审核验证(人工金标准子集):ICES 临床科学家以社区病历审核估计 PPV,糖尿病约 80%、高血压约 87%(HiCOSTT 协议)。
- 研究自定义结局:以编码组合定义死亡、再入院、出血等终点(RECORD 规范报告)。
常用衍生队列的算法定义骨架(具体编码组合以发表定义为准):
| 队列 | 定义骨架 | 验证要点 |
|---|---|---|
| 糖尿病(ODD) | ≥1 次住院或 ≥2 次门诊糖尿病编码(或 ODB 降糖药) | PPV 约 80%;65+ 灵敏度更高 |
| 高血压(HYPER) | 门诊/住院高血压编码组合 | PPV 约 87% |
| 哮喘 | 1 次住院或 2 次门诊哮喘编码 | 门诊驱动,低龄段需谨慎 |
| IBD(OCCC) | 4 年内 ≥5 次住院/急诊/门诊 IBD 编码 | 特异度高、灵敏度中等 |
| 类风湿(ORAD) | 风湿专科就诊+住院+ DMARD 处方组合 | 专科就诊敏感 |
| 心衰 | 住院主诊断+门诊辅助+处方 | 依定义版本而异 |
| 痴呆 | 住院+门诊+处方(多算法版本) | 门诊诊断低估真实患病 |
§3.6 标注者资质与一致性
衍生队列定义由 ICES 临床科学家(多具备临床流行病学背景)开发,验证采用双审图表摘录;行政编码本身由医院编码员按 CIHI 国家标准(ICD-10-CA/CCI)完成,接受 CIHI 数据质量审计。BORN 数据质量评估显示 29 个数据元素中 23 个与病历一致性超 90%(BORN Data Resource Profile, 2021)。仓库整体无 inter-rater kappa 类指标,一致性以 PPV/灵敏度+数据质量审计呈现。
§3.7 采集周期
安大略单一支付方系统按事务实时产生记录;ICES 接收频率因库而异:OHIP/ODB 月更,OLIS 季更,DAD/NACRS 月至年更,OCR/BORN 年更;总体滞后"快至双周、慢至 1–2 年"(ICES About Data)。数据字典逐库标注最近更新日(如 OHIP 2026-05-08 更新至 2026-04 数据)。
§3.8 地域覆盖
加拿大安大略省全域(含北部偏远地区),7 个物理站点对应全省网络(多伦多总部 + London、Kingston、Hamilton、Sudbury 等)。安省居民在省外(其他省/美国)接受的医疗亦以补偿记录回流;非安省居民在省内的服务记录不可链接(Vermeulen et al., 2020)。
§3.9 设备规格
行政数据不含设备级参数(无监护仪/影像设备型号、采样率);住院资源强度以 RIW/权重字段与护理级别代理。需要设备级信号的研究应使用 MIMIC-III 等单中心 ICU 数据源,并以 ICES 做人群层验证。
需要特别说明的是"离群值"含义的差异:在设备数据中,异常值可能来自传感器故障;在行政数据中,"异常值"几乎总是真实的系统行为——例如理赔高峰反映流行病或政策变化,超长住院反映社会性滞留(无家可归者的住院延迟出院)。预处理时应保留这些值并给予领域解释,而非机械剔除。
§3.10 深度溯源链
每个分析数据点的溯源路径为:医疗机构产生 → 省级托管方(卫生厅/CIHI/CCO)按 DSA 传输 → ICES 链接团队(受限小组)以 RPDB 为脊柱执行 Fellegi-Sunter 概率链接/确定性匹配 → 分配 IKN → 去标识入库(SAS/SQL)→ DAS 按数据集创建计划生成研究提取。全流程记录在数据字典与隐私协议中,外部研究者可见到"库-表-字段"级元数据但不可触及原始可识别层(Vermeulen et al., 2020)。
§4 数据结构
§4.0 目录树
一个典型 DAS 研究项目在 IDAVE 环境中的目录结构(示意,字段名以实际数据字典为准):
project_home/
├── data/ # ICES DAS 生成的去标识提取(只读)
│ ├── cohort/
│ │ ├── cohort_index.sas7bdat # 研究队列索引:ikn + index_date
│ │ └── inclusion_exclusion.sas7bdat
│ ├── source/
│ │ ├── ohip_service.sas7bdat # OHIP 理赔:服务日期/fee code/ICD-9 诊断
│ │ ├── dad_discharge.sas7bdat # DAD 住院:入出院日期/ICD-10-CA/CCI/RIW
│ │ ├── nacrs_visit.sas7bdat # NACRS 急诊:到访日期/CTAS/主诉
│ │ ├── odb_dispense.sas7bdat # ODB 处方:DIN/数量/供货天数
│ │ ├── olis_result.sas7bdat # OLIS 实验室:检验码/结果/参考范围
│ │ └── rpdb_demo.sas7bdat # 人口脊柱:出生/死亡/邮编/收入五分位
│ └── ref/
│ ├── icd10ca_lookup.csv # 诊断编码映射参考
│ ├── din_atc_lookup.csv # DIN→ATC 药物分类
│ └── onmarg_quintile.csv # 边缘化指数五分位
├── analysis/
│ ├── 01_build_cohort.R # 队列构建(纳入/排除)
│ ├── 02_derive_outcomes.R # 结局定义(再入院/死亡)
│ ├── 03_tables_figures.R # 表图生成
│ └── sas/ # ICES 宏模板(部分复用)
├── output_for_vetting/ # 待审查输出(聚合级,禁止个体行)
└── docs/
└── data_dictionary_extract.md # 提取版字段说明
§4.1 DAIMS 字段字典(核心表精选)
| 字段名 | 类型 | 说明 | 示例值 | AI 用途 | 观测误差 | 信息性缺失编码 | 取值范围 |
|---|---|---|---|---|---|---|---|
| IKN | 文本 | 10 位加密个体键,全库链接主键 | 9 位数字+校验位形态的编码串 | 个体级聚合、防泄漏分组 | 链接错误率极低但存在(概率链接灰区人工裁决) | 无缺失(脊柱内必有) | 固定长度编码 |
| SERVICE_DATE | 日期 | OHIP 服务日期 | 2019-03-14 | 时序特征、暴露窗口 | 申报延迟致末月截尾 | 无 | 1991-07 起 |
| DXCODE (OHIP) | 文本 | 3 位 ICD-9 诊断 | 250 | 糖尿病等表型的门诊线索 | 粒度粗、以计费为目的 | 空串表示未填诊断 | ICD-9 3 位 |
| ADMITDATE/DISCHARGEDATE | 日期 | DAD 入/出院日期 | 2021-11-02 / 2021-11-09 | 住院时长、再入院窗口 | 转院拆分多行 | 无 | 1988 起 |
| DIAGCODE_10CA | 文本 | ICD-10-CA 诊断(主+至多 24 副) | I21.9 | 表型提取、结局定义 | 编码质量受机构差异影响 | 无 | ICD-10-CA 全表 |
| CCI_CODE | 文本 | CCI 操作编码 | 1.IJ.76 | 手术队列、治疗暴露 | 2002-04 前为 ICD-9-CM | 无 | CCI 全表 |
| CTAS | 有序 | 急诊分诊级别 | 3 | 急症严重度特征 | 主观评定,机构间漂移 | 缺失=未分诊 | 1–5 |
| DIN | 文本 | ODB 处方药物识别号 | 02247327 | 药物暴露(映射 ATC) | 处方≠实际服用(依从性) | 无 | Health Canada DIN |
| DAYS_SUPPLY | 整数 | 供货天数 | 30 | 日剂暴露量估计 | 老年人群断药/换药常见 | 无 | 1–365 |
| DEATH_DATE | 日期 | RPDB 死亡日期 | 2023-07-01 | 生存终点 | 登记滞后数月 | 空表示在世 | 1990 起 |
| RESULT_VALUE (OLIS) | 文本/数值 | 检验结果值 | 7.2 mmol/L | 实验室时序特征 | 单位不统一、定性/定量混杂 | 空表示无结果 | 检验项目相关 |
| GEST_AGE_DAYS (BORN) | 整数 | 孕周 | 272 | 围产结局建模 | 与病历一致性 >90% | 部分缺失 | 140–322 |
| RIW | 浮点 | DAD 资源强度权重(成本代理) | 1.847 | 费用/利用强度特征 | 随 CIHI 分组器版本变化 | 无 | ≥0 |
| INC Quintile | 有序 | 邮编映射的邻里收入五分位 | 4(次高) | 健康不平等分层 | 邻里级而非个体级 | <2% 缺失 | 1–5 |
| LANDING_DATE (IRCC) | 日期 | 移民落地日期 | 2012-06-18 | 移民健康、观察窗起点 | 仅含首落安省者 | 非移民为空 | 1985 起 |
| SPECIALTY (IPDB) | 文本 | 医师专科(IPDB) | Internal Medicine | 医师侧特征、转诊分析 | 10%–20% 缺失 | 空表示未知 | 专科目录 |
| BIRTH_WEIGHT (BORN) | 整数 | 新生儿出生体重(g) | 3,350 | 围产结局 | 与病历一致性 >90% | 部分缺失 | 约 300–6,500 |
§4.2 标签分布
以验证队列为例:糖尿病、高血压、哮喘、心衰等衍生队列在 1,400 万人口中的患病率随定义而异(如成人糖尿病患病率约 1/10 量级,官方未逐库披露精确值)。研究中的二分类结局(如 30 天再入院、1 年死亡)分布高度不均衡,需按 §5 划分建议处理。精确标签分布应在数据提取后于安全环境内生成,并以聚合形式经审查带出(Vermeulen et al., 2020)。
§4.3 关键统计
- 仓库规模:104 库 / 528,197 变量 / 278 亿条记录 / 4.6 TB(截至 2022-10,re3data)。
- 人口覆盖:RPDB 收录所有曾获 OHIP 卡者,累计超 2,100 万人;在册服务人口 1,340–1,400 万(ICES;ICES Western FAQ)。
- 年流失:因迁出安省失访约 0.5%/年(HiCOSTT 协议)。
- 处方数据误差:ODB 配药记录错误率 <1%(HiCOSTT 协议)。
- 缺失水平:处方库 prescriber specialty 缺失 10%–20%;邻里收入五分位与农村标识缺失 <2%(高通量 DDD 协议)。
- 糖尿病定义验证:PPV 约 80%;高血压定义 PPV 约 87%(社区图表审核口径,HiCOSTT 协议)。
- BORN 数据质量:29 个被评数据元素中 23 个与病历一致性 >90%(BORN Data Resource Profile, 2021)。
- 机构规模:约 500 名科学家与员工(2020)、300 名科学家(近年)、7 个物理站点(Vermeulen et al., 2020;ICES Western FAQ)。
§4.4 数据层级
人(IKN,2,100 万+ 累计)
└── 入组/事件层
├── OHIP 理赔(事件级:每次服务)
├── DAD 住院(事件级:每次出院,内含诊断/操作多行)
├── NACRS 急诊(事件级:每次到访)
├── ODB 处方(事件级:每次配药)
├── OLIS 检验(事件级:每个结果)
└── 登记层(OCR 病例、BORN 分娩母子对、ORGD 死亡)
AI 建模的最小单位是"人-时间窗":个体聚合后构造纵向特征序列,禁止以事件行独立抽样。
§4.5 缺失值与信息性缺失
| 缺失情形 | 编码/表现 | 信息性含义 | 处理建议 |
|---|---|---|---|
| 65 岁以下 ODB 记录 | 结构性缺席 | 非随机:无私人药保者多为低收入 | 限定 65+ 队列或注明覆盖缺口 |
| OHIP 诊断字段空 | 空串 | 部分服务类型不填诊断 | 按服务代码分层,勿视为负类 |
| OLIS 结果空 | 无行 | 未开具检验≠正常 | 使用"检验是否发生"作为特征 |
| BORN 产前要素缺失 | 字段空 | 高危转诊路径差异 | 敏感性分析 |
| 死亡日期滞后 | 末月无记录 | 登记延迟 | 队列冻结日早于数据截止日 |
§5 数据划分与使用建议
§5.1 官方划分
ICES 不提供官方 train/val/test 划分——它是研究平台而非基准数据集。研究者经 DAS 申请的是为具体问题定制的提取。
§5.2 社区惯例划分
- 时间划分:开发期(如 2005–2015)训练、验证期(2016–2018)内部验证,再以更新期数据评估漂移;符合行政数据研究主流做法。
- 地理划分:按 LHIN 卫生区留一做空间外推验证。
- 目标试验模拟式划分:按索引事件日期对齐后随机分组,保证暴露后协变量不进入特征。
时间划分的实操要点:冻结日、开发窗与验证窗之间应预留"编码稳定带"(避开 4 月 1 日 CIHI 编码更新与财政年度切换)。对疫情研究,2020 年后的数据构成独立域外域,任何在此之前的模型都应报告 2020–2022 期的域移性能而非仅合并性能。
§5.3 泄漏风险(重点)
- 同人多窗泄漏:同一患者多次入组(多次住院)同时出现在训练与验证集会造成乐观偏差——必须按 IKN 分组切分。
- 幸存者/ immortal time 偏倚:以"诊断后获得某治疗"定义暴露时,诊断到治疗的时间窗不能进入特征。
- 编码切换伪影:2002-04 ICD-9-CM→ICD-10-CA 切换前后直接混用编码特征会让模型学到"年份"而非"疾病"。
- 链接后外数据泄漏:研究专属原始采集数据(如临床试验数据)经 DSA 链接后,其采集时点信息可能无意间代理结局。
第五类在行政数据中同样常见:利用密度代理泄漏——既往就诊次数、费用等特征在结局(如再入院)发生前本应截止,但医院层的"出院后门诊随访安排"等记录可能暗示结局;特征窗结束日必须严格早于结局风险窗起点,并以时间轴审计脚本逐人校验。第六类是汇总表二次利用:先前研究发布的聚合率(如州/卫生区年率)若作为特征回灌,会把结局流行率信息带入训练期,跨研究特征复用时应核查其时间戳与人群口径。
§5.4 交叉验证建议
按 IKN 分组的 5–10 折 CV;时间敏感任务用前向链(rolling origin)CV;报告 RECORD 规范要求的队列构建流程图与各步剔除人数(RECORD, 2015)。
# 前向链时间 CV(IDAVE 内),按年份滚动并始终按人分组去重
import numpy as np
import pandas as pd
base = pd.read_csv("analysis/base_features.csv",
parse_dates=["index_date"])
base["year"] = base["index_date"].dt.year
years = sorted(base["year"].unique())
for i, cut in enumerate(years[:-1]):
tr = base[base["year"] <= cut]
va = base[base["year"] == years[i + 1]]
assert tr["ikn"].is_unique or True # 若一人多窗,需 groupby 去重后再切
print(f"fold {i}: train<= {cut} n={len(tr):,}, "
f"valid={years[i + 1]} n={len(va):,}")
§5.5 外部验证建议
优先同范式跨省数据(Swedish NPR、Danish NPR、SNDS)做时间-空间双迁移测试;跨范式迁移(理赔→单中心 EHR)预期性能显著下降,应只作定性验证并报告校准斜率而非仅 AUROC。
外部验证的最小报告集:目标人群标准对照表(两系统的资格规则差异)、编码映射表(ICD-10-CA↔ICD-10-AM/ICD-10-CM)、区分度+校准+决策曲线三项、按亚组(年龄/性别/收入五分位)的性能分层。ICES 社区已经发展出成熟的跨国行政数据协作规范(HDRN Canada 与 IPDLN 网络),跨系统合作通常以双边数据共享协议和联合分析(分地执行各自侧脚本,仅交换聚合结果)形式实现——这与 ML 社区的"集中训练"习惯截然不同,需在立项时纳入计划。
§6 AI 就绪指南
§6.0 云端快速启动
ICES 不提供任何云端公开环境或 Docker 镜像——分析只能在 ICES 治理的安全环境内进行。可公开获取的是:数据字典(字段与取值范围)、General Use 聚合数据与方法学论文。因此本节所有代码为"进入 IDAVE 后"的可运行模板,输入文件为 DAS 交付的研究就绪提取。
§6.1 快速上手
以下代码假定:项目目录为
project_home/(结构见 §4.0);data_root = "data/source/",DAS 已将各源表放入该目录;最小可用子集 =cohort_index.sas7bdat(队列索引)+rpdb_demo.sas7bdat(人口脊柱)+ 任一事件表。环境为 IDAVE 内的 R/Python/SAS。
# -*- coding: utf-8 -*-
# 目录结构预期:project_home/data/source/*.sas7bdat(由 ICES DAS 交付,只读)
# data_root 拼接关系:data_root + 各表文件名; cohort_index 提供 ikn 与 index_date
# 最小可用子集:cohort_index + rpdb_demo + ohip_service(即可做基础特征)
import pandas as pd
DATA_ROOT = "data/source/" # IDAVE 项目目录内相对路径
# 读取研究就绪提取(SAS7BDAT)
cohort = pd.read_sas(DATA_ROOT + "cohort/cohort_index.sas7bdat", format="sas7bdat")
demo = pd.read_sas(DATA_ROOT + "source/rpdb_demo.sas7bdat", format="sas7bdat")
# 基础人口学基线:以 index_date 为锚,计算入组年龄与性别构成
base = cohort.merge(demo, on="ikn", how="left", validate="one_to_one")
print(base[["ikn", "index_date"]].head())
print("队列人数:", len(base))
R 侧等价读取(IDAVE 预装 R 环境;ICES 长期以 SAS 为官方分析语言,R/Python 亦可用):
# R:读取同一提取(haven 包在 IDAVE 环境内可用)
library(haven)
cohort <- read_sas("data/source/cohort/cohort_index.sas7bdat")
demo <- read_sas("data/source/source/rpdb_demo.sas7bdat")
base <- merge(cohort, demo, by = "ikn", all.x = TRUE)
cat("队列人数:", nrow(base), "\n")
§6.2 数据获取
| 步骤 | 内容 | 依据 |
|---|---|---|
| 1 | 提交 DAS Request Form(公共部门/私部门表单)至 das@ices.on.ca | Submit a Request |
| 2 | 2 个工作日内可行性评估 + 项目咨询(≤10 小时) | DAS Workflow |
| 3 | 获得 Confirmation of Feasibility 与费用估计 | 同上 |
| 4 | 取得所在机构 REB 伦理批准 | 同上 |
| 5 | ICES 隐私办公室审查后签署 DAS Agreement | 同上 |
| 6 | 数据集创建计划(DCP)定稿;签署协议后数据就绪中位 37 天 | Vermeulen et al., 2020 |
| 7 | 在 IDAVE 分析;输出经再识别风险评估后放行 | 同上 |
资格要求:公共部门研究者(大学/医院/公卫机构成员或学生)可获个体级去标识数据远程访问;私部门仅可获全托管分析报告。经费需在申请时确认(DAS 为收费服务)。
时间与费用要点(官方口径):
| 事项 | 官方口径 |
|---|---|
| 提交后首次反馈 | 2 个工作日内 |
| 项目咨询时长 | 最多 10 小时 |
| 签署协议后数据就绪(外部) | 中位 37 天 |
| 内部项目 PIA→数据访问 | 中位 50 天 |
| 服务费 | 按 DAS Agreement 报价(咨询、提取、环境、输出审查分别计费;具体金额官方未公开统一价目) |
| 输出放行 | 经再识别风险评估(“平均约 2 个工作日响应”) |
# 访问资格自查清单(提交 Request Form 前逐项确认)
# [1] 申请人属于公共资助的非营利机构/高校/医院,或有资助的私部门项目
# [2] 已明确研究问题、索引事件、所需数据集与时间窗(可引用数据字典编码)
# [3] 机构 REB 可出具批准(或确认 PHIPA s.45 路径下无需 REB 的情形)
# [4] 团队指定统计软件经验成员(SAS/R/Stata)为 IDAVE 用户
# [5] 预算覆盖 DAS 服务费(咨询、提取、环境、输出审查)
§6.3 预处理全流程
在 IDAVE 内运行。全流程:读取提取 → 个体级去重与行级清理 → 编码映射 → 队列构建 → 特征工程 → 输出。
<details>
<summary>展开完整预处理脚本(约 40 行)</summary>
# -*- coding: utf-8 -*-
# 步骤 1:事件表清洗(以 OHIP + DAD 为例)
import pandas as pd
import numpy as np
DATA_ROOT = "data/source/"
def load(name):
return pd.read_sas(f"{DATA_ROOT}{name}", format="sas7bdat", encoding="latin-1")
ohip = load("source/ohip_service.sas7bdat")
dad = load("source/dad_discharge.sas7bdat")
demo = load("source/rpdb_demo.sas7bdat")
# 步骤 2:OHIP 诊断字段清理(3 位 ICD-9,空串=未填诊断,勿当负类)
ohip["dx"] = ohip["dxcode"].fillna("").str.strip()
# 步骤 3:DAD 编码切换对齐——2002-04-01 前后分别处理
dad["era"] = np.where(dad["adm_date"] < pd.Timestamp("2002-04-01"),
"icd9cm", "icd10ca")
dad["keep_dx"] = (dad["era"] == "icd10ca") # 混合期研究需显式处理
# 步骤 4:队列构建——按 IKN 聚合到"人-索引事件"层
cohort = load("cohort/cohort_index.sas7bdat")
hosp_cnt = (dad[dad["keep_dx"]]
.merge(cohort[["ikn", "index_date"]], on="ikn")
.query("adm_date <= index_date"))
prior_hosp = (hosp_cnt.groupby("ikn").size()
.rename("prior_hospitalizations"))
# 步骤 5:特征拼接与基线表
base = (cohort.merge(demo, on="ikn", how="left")
.merge(prior_hosp, on="ikn", how="left"))
base["prior_hospitalizations"] = base["prior_hospitalizations"].fillna(0)
# 步骤 6:结局(30 天再入院示例:出院后 7–30 天内再次住院)
dad_sorted = dad.sort_values(["ikn", "adm_date"])
first_adm = dad_sorted.groupby("ikn").first().reset_index()
nxt = dad_sorted.merge(first_adm[["ikn", "adm_date"]],
on="ikn", suffixes=("", "_first"))
nxt = nxt[nxt["adm_date"] > nxt["adm_date_first"]].groupby("ikn")["adm_date"].min()
gap = (nxt - first_adm.set_index("ikn")["discharge_date"]).dt.days
readmit30 = ((gap >= 7) & (gap <= 30)).astype(int).rename("readmit30")
base = base.merge(readmit30, on="ikn", how="left").fillna({"readmit30": 0})
base.to_csv("analysis/base_features.csv", index=False)
</details>
要点:编码映射依赖 ICES 参考表(ICD-10-CA、CCI、DIN→ATC);衍生队列定义应引用已发表算法定义并注明版本年份;所有聚合在 IKN 层完成。
§6.4 PyTorch DataLoader 完整代码
场景:以基线特征 + 既往事件序列预测 30 天再入院。输入为 IDAVE 内生成的
base_features.csv(个体级)与event_sequences.csv(每人既往 12 个月事件编码序列)。数据不离开环境,训练在 IDAVE/HAIDAP 完成。
<details>
<summary>展开 PyTorch Dataset + DataLoader(约 45 行)</summary>
# -*- coding: utf-8 -*-
# 输入约定:
# base_features.csv —— 个体级:ikn, age, sex, prior_hospitalizations, ..., readmit30
# event_sequences.csv —— 序列级:ikn, event_code(ICD-10-CA/CCI/fee code), event_time
# 序列按 index_date 截窗(仅既往 12 个月),确保无结局后信息进入特征
import pandas as pd
import torch
from torch.utils.data import Dataset, DataLoader
from sklearn.model_selection import GroupShuffleSplit
class IcesCohortDataset(Dataset):
def __init__(self, base_path, seq_path, max_len=128):
self.base = pd.read_csv(base_path)
self.seq = pd.read_csv(seq_path).sort_values(
["ikn", "event_time"], ascending=[True, False])
self.max_len = max_len
# 编码表:event_code -> id(未知编码映射到 UNK=1)
codes = sorted(self.seq["event_code"].astype(str).unique())
self.vocab = {"<PAD>": 0, "<UNK>": 1,
**{c: i + 2 for i, c in enumerate(codes)}}
def __len__(self):
return len(self.base)
def __getitem__(self, idx):
row = self.base.iloc[idx]
s = self.seq[self.seq["ikn"] == row["ikn"]]
ids = [self.vocab.get(str(c), 1) for c in s["event_code"]][: self.max_len]
ids += [0] * (self.max_len - len(ids)) # 后补 PAD
static = torch.tensor(
[row["age"], row["sex"], row["prior_hospitalizations"]],
dtype=torch.float32)
label = torch.tensor(float(row["readmit30"]), dtype=torch.float32)
return (torch.tensor(ids, dtype=torch.long),
torch.tensor(min(len(s), self.max_len), dtype=torch.long),
static, label)
# 按 IKN 分组切分,杜绝同人多窗泄漏
base = pd.read_csv("analysis/base_features.csv")
tr_idx, te_idx = next(GroupShuffleSplit(n_splits=1, test_size=0.2,
random_state=42)
.split(base, groups=base["ikn"]))
ds = IcesCohortDataset("analysis/base_features.csv",
"analysis/event_sequences.csv")
tr = torch.utils.data.Subset(ds, tr_idx.tolist())
te = torch.utils.data.Subset(ds, te_idx.tolist())
loader_tr = DataLoader(tr, batch_size=256, shuffle=True, num_workers=2)
loader_te = DataLoader(te, batch_size=512, shuffle=False, num_workers=2)
</details>
§6.5 坑点 8 个
⚠️ 坑点 1:ICD-9-CM 到 ICD-10-CA 的 2002-04 编码断层(分类:预处理陷阱)
问题:安大略医院 2002 年 4 月 1 日起从 ICD-9-CM 切换到 ICD-10-CA/CCI,同一诊断在切换点前后编码完全不同,跨期研究若直接合并编码特征,模型学到的将是"年份"而非疾病。
症状:以年份交叉验证时 AUROC 显著高于随机;切换点附近疾病发生率出现不可能的断崖。
解决:
- 简单方法:以切换日期分 era,分别建立编码映射后再合并(用官方 ICD-9→ICD-10 映射表)。
- 进阶方法:将研究期限定在单一 era 内(如 2003 年后),或在特征层使用 era 无关的衍生队列定义。
- SOTA 方法:用 phecode/CCSR 类中间映射层吸收编码体系差异,并做切换点敏感性分析。
参考:Vermeulen et al., 2020;CIHI 编码标准文档。
⚠️ 坑点 2:OHIP 理赔诊断是 3 位 ICD-9 且为计费而填(分类:标签理解)
问题:OHIP 门诊理赔的诊断字段只有 3 位 ICD-9 粒度,且填写动机是计费而非临床记录;把"无诊断码"当"无病"会把大量就诊错误负类化。
症状:门诊驱动表型的灵敏度异常低;空诊断字段比例高的服务类型上模型行为异常。
解决:
- 简单方法:以"是否出现该诊断码"而非"诊断码=0"构造弱标签。
- 进阶方法:OHIP 仅作辅助证据,表型以 DAD/NACRS/衍生队列为主,理赔做时序特征。
- SOTA 方法:多源证据规则(如 OCCC 的"4 年内 5 次就诊"式定义)并报告 PPV/灵敏度。
参考:HiCOSTT 协议。
⚠️ 坑点 3:ODB 只覆盖 65 岁以上(及特定人群),年龄即信息性缺失(分类:偏倚陷阱)
问题:门诊处方记录仅对 65 岁及以上(另有低收入、长期护理等例外)近全量覆盖;年轻队列的"无处方记录"混杂了真实未用药与结构性未覆盖。
症状:全年龄药物-结局研究出现随年龄变化的暴露-结局悖论;年轻组暴露率异常低。
解决:
- 简单方法:研究限定 65+ 队列(Ontario 药物流行病学最常见做法)。
- 进阶方法:年轻组改用住院期间用药或 OLIS 相关实验室代理,并显式建模覆盖差异。
- SOTA 方法:以 target trial emulation 框架明确资格标准(65+),按年龄分层报告。
参考:Vermeulen et al., 2020。
⚠️ 坑点 4:同人多次入组造成训练/验证泄漏(分类:数据泄漏)
问题:行政数据中同一患者可有多次住院/急诊,若按事件行随机切分,同一 IKN 的近似记录分属训练与验证集,AUROC 虚高。
症状:随机切分与按人切分的性能差距悬殊(常 0.05–0.15 AUROC);模型对"重复患者"过度自信。
解决:
- 简单方法:按 IKN GroupShuffleSplit 切分(§6.4 代码已内置)。
- 进阶方法:每患者仅保留索引事件(one-patient-one-index)后再划分。
- SOTA 方法:时间-人物双重分层(train 早于 test 的时间前向链 + IKN 分组)。
参考:RECORD 声明的队列报告规范。
⚠️ 坑点 5:各库更新滞后不一,冻结日对不齐(分类:工程陷阱)
问题:OHIP/ODB 月更、OLIS 季更、登记年更,滞后"双周到 1–2 年";若队列冻结日设得太近,结局(尤其死亡/出院摘要)在提取时根本未入库,造成假阴性结局。
症状:近期入组者的死亡/再入院率异常低,形成"越新越健康"的时间伪影。
解决:
- 简单方法:冻结日 = 最慢数据集的最后入库日减去最长结局窗。
- 进阶方法:按各库最后更新日分别设定完整期与不完整期,对不完整期标记删失。
- SOTA 方法:在 DCP 中向 DAS 明确要求各库交付截止日并写入数据字典提取版。
参考:ICES About Data;Data Dictionary。
⚠️ 坑点 6:迁出与失访导致的非随机删失(分类:偏倚陷阱)
问题:约 0.5%/年的居民迁出安省后服务记录消失,但 RPDB 未必即时反映;移民落地记录与流出信息不对称,长程随访的删失非随机。
症状:长时程 KM 曲线尾部趋于平坦得可疑;高原地区/移民密集区队列长程事件率偏低。
解决:
- 简单方法:将迁出作为竞争风险处理,随访窗封顶(如 5 年)。
- 进阶方法:用 RPDB"最后接触日期"字段做行政删失。
- SOTA 方法:敏感性分析(边界分析)量化删失假设对结论的影响。
参考:Vermeulen et al., 2020。
⚠️ 坑点 7:输出小单元抑制(<6)被反向推算绕过(分类:评估误用)
问题:IDAVE 输出必须经再识别风险评估,任何单元格值 <6 都会被要求抑制;研究者常用多张边际表交叉反算被抑制的小单元,违反协议且可被审计识别。
症状:输出审查退回,严重的可致项目终止;多表间边际不一致暴露推算。
解决:
- 简单方法:子组分析预设最小样本阈值,并在分析计划中申报。
- 进阶方法:报告边际时统一使用同一切割维度,避免互补边际。
- SOTA 方法:使用 DAS 建议的抑制与舍入规范(如对计数加扰动)。
参考:Request Project Outputs。
⚠️ 坑点 8:衍生队列 PPV 非完美,直接当金标准会传播误分类(分类:标签理解)
问题:ODD 糖尿病定义 PPV 约 80%、高血压约 87%,意味着约 1/5 的"病例"可能是误分;以衍生队列作监督信号训练的模型上限被误分类率卡死。
症状:模型性能逼近定义验证的 PPV 后不再提升;外部队列验证时灵敏度骤降。
解决:
- 简单方法:引用定义时注明 PPV/灵敏度与版本年份。
- 进阶方法:对高置信子集(多次住院+处方)训练,再弱标签扩展。
- SOTA 方法:以图表审核小样本做标签修正(label repair),或用期望最大化估计真实率。
参考:HiCOSTT 协议。
§6.6 数据增强
安全 ✅:
- 时间窗抖动(索引日前特征窗平移)+ 按人分组一致性检验。
- 编码层同义词映射(ICD-10-CA 聚合到 CCS/phecode 类层)。
- 类别加权/焦点损失处理结局不均衡(再入院、死亡)。
危险 ❌:
- SMOTE 类插值生成"合成患者":人口级数据本就无需增强平衡,合成样本会破坏协变量联合分布并使校准失效。
- 向序列中插入随机事件模拟"噪声":行政编码分布高度结构化,任何人工插入都会引入不可控偏倚。
- 跨 era 混用后用增强掩盖断层(见坑点 1)。
不均衡问题的正确姿势是以损失与阈值层面处理,而非造数据:
# 正例稀少(如 30 天再入院约 5%–15%)时的损失加权示例
import torch
pos_weight = torch.tensor([(y == 0).sum() / max((y == 1).sum(), 1)])
criterion = torch.nn.BCEWithLogitsLoss(pos_weight=pos_weight)
# 训练循环中:loss = criterion(logits, labels)
# 报告时仍以原始分布的校准曲线为准,勿用加权后概率直接宣称校准良好
§6.7 模型推荐表
| 任务 | 推荐模型 | 理由 |
|---|---|---|
| 静态基线风险预测 | 正则化逻辑回归 / XGBoost | 行政数据基线表天然表格化;可解释性契合监管语境 |
| 事件序列建模 | GRU/Transformer(编码序列) | §6.4 的编码序列输入;注意按人分组 |
| 药物安全 | New-user 队列 + 高维 PS 匹配/加权 | 因果推断标准范式,弱 ML 化 |
| 表型提取 | 规则算法定义 + 弱监督学习 | 已验证定义优先;学习法用于扩展 |
| 政策评估 | DiD / interrupted time series | 目标非个体预测而是总体因果效应 |
| 长时程生存 | Cox/弹性网 + 竞争风险(Fine-Gray) | 迁出构成竞争事件(坑点 6) |
| 多源融合 | 独立特征通道 + 后期融合 | 处方/实验室/就诊三通道频率不同,早期融合易过拟合 |
| 可解释性优先场景 | 评分卡/单调 XGBoost | 涉及政策话语时,透明度是可用性的前提 |
建模之外的工程建议:把"特征定义"写成可审计的代码字典(每个特征对应来源库、编码、时间窗、缺失处理),这既是 RECORD 报告要求,也是多年后模型复现的唯一依据——行政数据项目的生命周期常以十年计。
§6.8 硬件需求表
| 环节 | 最低配置 | 推荐 | 说明 |
|---|---|---|---|
| IDAVE 队列构建 | ICES 分配的虚拟集群 | 按项目协商 | 用户不自带硬件 |
| HAIDAP 深度学习 | 私云 HPC 配额 | GPU 节点按需 | 面向 AI/ML/NLP 项目 |
| 本地开发 | 无 | — | 本地只能处理审查后的聚合输出与示例数据 |
§6.9 评估指标代码
# IDAVE 内评估:区分度 + 校准(行政数据研究标准三件套)
import numpy as np
from sklearn.metrics import roc_auc_score, brier_score_loss
import statsmodels.api as sm
def evaluate(y_true, y_prob):
auroc = roc_auc_score(y_true, y_prob)
brier = brier_score_loss(y_true, y_prob)
# 校准斜率:以预测 logits 为唯一自变量拟合结局
logit = np.log(np.clip(y_prob, 1e-6, 1 - 1e-6) /
(1 - np.clip(y_prob, 1e-6, 1 - 1e-6)))
slope = sm.GLM(y_true, sm.add_constant(logit),
family=sm.families.Binomial()).fit().params[1]
return {"AUROC": auroc, "Brier": brier, "calibration_slope": slope}
print(evaluate(y_true, y_prob))
按亚组报告区分度与校准是行政数据研究的社区惯例(也是公平性审计的基础):
# 分层评估:按年龄组与收入五分位输出 AUROC 与平均预测值(输出前需聚合)
def subgroup_table(df, group_cols, y="y_true", p="y_prob"):
rows = []
for keys, g in df.groupby(group_cols):
if len(g) >= 6: # 小单元抑制阈值
rows.append({**dict(zip(group_cols, keys)),
"n": len(g),
"AUROC": roc_auc_score(g[y], g[p]),
"mean_pred": g[p].mean(),
"obs_rate": g[y].mean()})
return pd.DataFrame(rows)
# t = subgroup_table(eval_df, ["age_group", "income_quintile"])
# 注意:输出的表须经小单元抑制检查后方可放入 output_for_vetting/
§6.10 MLOps 笔记
- 数据版本即 DCP 版本:每次提取对应一份已签署的数据集创建计划;模型实验记录须绑定 DCP 日期,否则不可复现。
- 环境漂移:IDAVE 软件目录按批准清单更新,R/Python 包版本受管;本地不可复现环境时以论文附录的包版本表为准。
- 输出审查流水线:模型结果(含混淆矩阵、SHAP 图)均属"研究产出",走同一审查通道;小单元抑制规则适用于一切图表。
- 再训练触发:核心库月更 + 编码标准变化(CIHI 年度更新)是主要的上游变更源;建议以冻结快照做研究,以滚动更新做监测型应用。
- 协作规程:多人项目共享 IDAVE 项目目录时,代码以 Git 类版本控制在环境内管理(或经审查的脚本模板),分析目录与数据目录权限分离,避免"谁都能改数据"。
- 可复现包:结题时归档 DCP、特征字典、依赖版本表、随机种子与聚合输出;外部研究者归档权限随项目关闭终止,这些档案是唯一留给团队的遗产。
§7 质量评估与局限性
§7.1 已知偏倚表
| 偏倚类型 | 描述 | 严重程度 | 缓解 |
|---|---|---|---|
| 覆盖偏倚 | 无有效 OHIP 卡者(待审新移民、部分原住民社区)不入库 | 中 | 与原住民组织签署专项协议;敏感性分析 |
| 测量偏倚 | 编码为计费/管理产生,非临床叙述;门诊诊断仅 3 位 ICD-9 | 高 | 已验证算法定义;多源三角验证 |
| 信息性缺失 | 65 岁以下无 ODB;私人医疗活动不在库 | 高 | 限定合格人群;显式建模覆盖缺口 |
| 迁出删失 | 约 0.5%/年失访,非随机 | 低-中 | 行政删失 + 竞争风险 |
| 时变性 | 2002 编码切换、CIHI 标准年度更新 | 中 | era 分层;时间敏感性分析 |
| 种族代理 | 无直接种族字段,姓氏算法灵敏度低(如南亚姓氏算法灵敏度 50.4%) | 中 | 报告算法性能;避免过度解读 |
§7.2 标注质量
衍生队列是事实上的标签标准:糖尿病定义 PPV 约 80%、高血压 PPV 约 87%(社区图表审核口径);BORN 关键要素与病历一致性 >90%;ODB 配药记录错误率 <1%。没有全库统一的人工复核——这正是行政数据的本性,研究者在构建监督任务时应把"定义验证文献"当作标签文档的一部分(HiCOSTT 协议;BORN Data Resource Profile, 2021)。
理解行政编码的"标注质量"要建立三层模型:
- 编码层:医院编码员按 CIHI 国家标准编码,接受 CIHI 质量审计——准确率有保障但受"编码为报销服务"的目的约束。
- 定义层:算法定义把编码映射为疾病/结局,PPV/灵敏度取决于定义与编码组合——这是研究者可控的部分。
- 事件层:编码缺失≠事件未发生(如门诊诊断空字段);验证研究测得的是"定义相对病历"的准确率,而非"数据相对真相"的完整率。
报告结果时注明所处层级,可避免"PPV 80% 是否意味着数据不可信"这类常见误解。
§7.3 泛化性表
| 场景 | 失效风险 | 证据 |
|---|---|---|
| 迁移到美国商业理赔(如 CMS Medicare LDS) | 支付结构、人群年龄结构、编码惯例差异大 | 跨国行政数据研究普遍报告性能下降 |
| 迁移到单中心 ICU EHR(MIMIC-III) | 人群选择偏倚完全不同,特征粒度不可比 | 概念性验证尚缺,需本地重校准 |
| 同省跨年代(2000→2020) | 编码切换、诊疗模式变迁 | 需 era 分层与时间外部验证 |
| 全年龄用药研究 | ODB 覆盖断层 | 结构性信息缺失(坑点 3) |
§7.4 伦理
无需个体同意即收集使用(PHIPA s.45 规定实体路径),因此伦理重量转移到了治理侧:IPC 三年一轮的全套政策审查、公共咨询委员会、原住民数据主权协议(First Nations、Inuit、Métis 数据经专门协议治理,Indian Registry 约 20 万人)、输出再识别审查。研究者申请时必须通过机构 REB(或确认 s.45 豁免情形),并遵守"数据不出环境"的约束(ICES 隐私问答)。
§7.5 公平性
ICES 提供了少见的公平性研究基础设施:ONMARG 边缘化指数(四维度:物质资源、住户与家庭结构、人口时效性、族群聚集与迁徙)、收入五分位、城乡指数、移民落地数据可全部挂接个体。但其公平性测量本身有边界——种族以姓氏算法代理(灵敏度有限)、社会指标为邻里级而非个体级,小型社区分析又受小单元抑制约束。公平性结论应表述为"邻里层面关联"而非个体归因(Vermeulen et al., 2020)。
对 AI 开发者的三条落地建议:
- 分层审计常态化:模型上线前按收入五分位、ONMARG 四维、移民类别逐层报告假阳/假阴率;这在本库是零额外成本(字段现成)。
- 代理变量敏感性:把"姓氏算法种族"当敏感属性使用时,必须同时报告算法本身的灵敏度/特异度,否则审计结论会被算法噪声污染。
- 小群体可见性悖论:小单元抑制保护了最脆弱群体,也使最小群体的模型误差不可观测;应改用分组聚合指标(如原住民社区协议内的合作分析)而非强行切分。
§7.6 数据漂移
三类系统性漂移需要监控:编码标准漂移(ICD-10-CA/CCI 年度更新、2002 大切换)、政策漂移(付费模式与服务组织变化改变理赔行为)、人口漂移(移民构成与老龄化)。疫情期间(2020–2022)医疗服务总量与结构剧变,是检验时间鲁棒性的天然压力测试。
漂移监控的可操作框架:
| 漂移源 | 监测信号 | 触发动作 |
|---|---|---|
| 编码年度更新 | 特征分布 KS 距离按年监控 | 重映射后重训;冻结旧模型仅供复现 |
| 服务模式变化 | 就诊频次/费用分布突变检测 | 检查是否为真实政策变化,记录到特征字典 |
| 人口构成 | 年龄/移民份额滚动均值 | 更新资格标准,分层重校准 |
| 灾难性事件 | 疫情级服务量断崖 | 域内分模型或加时期指示变量 |
§7.7 DAIMS 24 项评估表
| # | 检查项 | 状态 | 说明 |
|---|---|---|---|
| 1 | 宽格式 | ✅ | 人级基线表 + 事件序列层结构清晰 |
| 2 | 唯一标识 | ✅ | 10 位 IKN 全库稳定链接 |
| 3 | 特殊字符 | ✅ | SAS/SQL 管道统一处理;提取版已清洗 |
| 4 | 重复行 | ⚠️ | 事件天然多次重复,需研究侧定义去重口径 |
| 5 | 缺失编码 | ⚠️ | 空串/缺行语义各异(§4.5) |
| 6 | 标签标识 | ✅ | 衍生队列即标签,附验证文献 |
| 7 | 罕见类分组 | ✅ | 小单元抑制制度强制保护罕见子群 |
| 8 | 偏倚评估 | ✅ | 覆盖/测量/删失偏倚均有文档 |
| 9 | 数据字典 | ✅ | 公开在线数据字典,逐库逐字段 |
| 10 | 信息性缺失解释 | ✅ | ODB 年龄覆盖等官方明确说明 |
| 11 | 设备记录 | ❌ | 行政数据无设备级信息 |
| 12 | 共线性 | ⚠️ | 诊断/费用/利用特征高共线,需降维或正则 |
| 13 | 编码映射 | ✅ | ICD-10-CA/CCI/DIN 参考表齐备 |
| 14 | 时间戳处理 | ⚠️ | 各库滞后不一(坑点 5) |
| 15 | 划分建议 | ⚠️ | 无官方划分,需研究侧按人/时间分层 |
| 16 | 泄漏讨论 | ⚠️ | 官方不涉及;本词条 §5.3/§6.5 给出方案 |
| 17 | 标签分布 | ✅ | 可在环境内生成并审查后输出 |
| 18 | 测量偏倚 | ✅ | 计费动机编码已被充分描述 |
| 19 | 外部验证建议 | ✅ | 跨省/跨国范式成熟(RECORD 社区) |
| 20 | 版本记录 | ⚠️ | 无版本化发布;以数据字典快照替代 |
| 21 | 预处理脚本 | ❌ | 无官方公开脚本;DAS 提供模板宏但不可公开下载 |
| 22 | 合规要求 | ✅ | PHIPA + IPC 三年审查 + DAS 协议全链路 |
| 23 | 多模态对齐 | ✅ | IKN 实现理赔/住院/处方/实验室/登记对齐 |
| 24 | 去标识化 | ✅ | 摄入即去标识 + 输出再识别审查 |
DAIMS 评分:18.5 / 24
评分解读:15 项 ✅、7 项 ⚠️、2 项 ❌。数据治理、链接能力与合规透明度达到行政数据领域的最高水准;扣分集中在"平台非基准数据集"的固有属性——无官方划分、无公开预处理脚本、无设备级信息——这些不是数据质量问题,而是"研究服务型平台"与"即插即用数据集"的范式差异。
对你意味着什么:如果你的任务是训练即用型基准模型(下载→训练→比较),ICES 不是合适的对象,请看 MIMIC-III 类开放数据集;如果你的任务是回答一个需要全省代表性、长时程、多源结局的科学问题,ICES 是加拿大境内最强的选择,但要把"申请周期(中位 37 天数据就绪)+ 预算 + 输出审查"纳入项目计划,并把标签当作"带 PPV 的弱标签"而非金标准。
§7.8 外部验证矩阵
| 外部数据集/场景 | 来源机构 | 评估任务 | 性能指标 | 相对内部变化 | 关键发现 |
|---|---|---|---|---|---|
| 活体肾供者风险模型 | 国际指南采纳(Garg 等 NEJM 2015) | 供者肾功能/风险分层 | 临床指标体系 | 进入国际实践指南 | 行政数据风险框架可迁移至临床指南 |
| 心衰住院信号(rofecoxib) | 加拿大及国际监管语境 | 药物-结局关联 | 相对风险 | 与国际监管行动一致 | 2004-09 Vioxx 撤市与 ICES 证据同期 |
| 加替沙星血糖异常 | Health Canada 警告 | 药物安全 | OR 约 4/约 17 | 触发警告与停产 | 信号在监管层面得到外部印证 |
| BORN 与 CIHI-DAD 低危分娩队列 | ICES 学术对照研究 | 要素一致性 | 多要素 >90% 一致 | 两源可互换用于多数要素 | 登记与行政数据互补验证可行 |
说明:ICES 作为研究平台,其"外部验证"形态是研究结论在监管/指南层面的印证与跨库一致性研究,而非机器学习意义的多数据集 leaderboard;ML 模型级外部验证由具体研究自行完成。
§8 基准性能与生态
§8.1 代表性高影响力研究"榜单"
ICES 无模型排行榜;下表以其数据驱动的里程碑研究为参照系(不同任务、不同结局,数值不可直接比较):
| 排名 | 研究 | 关键数值 | 年份 | 关键技术/设计 | 完整引用 | 代码 |
|---|---|---|---|---|---|---|
| 1 | 手机通话与机动车碰撞 | RR 4.3 | 1997 | 病例交叉设计 | Redelmeier DA, Tibshirani RJ. N Engl J Med. 1997;336(7):453-8. DOI: 10.1056/NEJM199702133360701 | 无公开 |
| 2 | COX-2/NSAID 与老年心衰 | 相对增幅约 80% | 2004 | 新用药者队列 | Mamdani M, Juurlink DN, Lee DS, et al. Lancet. 2004;363(9423):1751-6. DOI: 10.1016/S0140-6736(04)16263-1 | 无公开 |
| 3 | 加替沙星与血糖异常 | 低血糖约 4 倍/高血糖约 17 倍 | 2006 | 自我对照病例系列 | Park-Wyllie LY, Juurlink DN, Kopp A, et al. N Engl J Med. 2006;354(13):1352-61. DOI: 10.1056/NEJMoa055516 | 无公开 |
| 4 | RECORD 报告规范 | 15+ 期刊采纳 | 2015 | 方法学共识 | Benchimol EI, Smeeth L, Guttmann A, et al. PLoS Med. 2015;12(10):e1001885. DOI: 10.1371/journal.pmed.1001885 | 无公开 |
| 5 | 数据资源画像(引用锚点) | 90 数据集/200 亿记录 | 2020 | 平台综述 | Vermeulen MJ, Schull MJ, Azimaee M, et al. Int J Popul Data Sci. 2020;4(2):1135. DOI: 10.23889/ijpds.v4i2.1135 | 无公开 |
§8.2 SOTA 总结与选型建议
在行政数据健康研究语境下,"SOTA"体现为方法学规范的演进:从简单率比较,到新用药者设计与高维倾向评分,再到目标试验模拟;机器学习预测模型则以"区分度+校准+按人分组的时间外部验证"为及格线。选型建议:因果问题优先用准实验设计而非纯预测模型;预测问题务必报告校准;一切研究按 RECORD 规范报告队列构建流程。
三条趋势判断:
- 因果 ML 融合:高维倾向评分与 ML 元学习器(如 double machine learning)正成为药物安全研究的主流升级路径,ICES 的高维协变量丰富度天然适配。
- NLP 进入视野:HAIDAP 的建设目标之一即支撑自然语言处理(病历文本、影像报告);但 EMR 文本层 2010 年起且覆盖有限,短期内行政编码仍是主力。
- 联邦化访问:HDRN Canada 的跨省协作把"数据不动、分析动"推向国家级,跨省模型验证将逐步标准化——AI 团队应按"分地执行脚本、交换聚合结果"预设计算架构。
§8.3 评测协议
- 队列构建流程图(纳入/排除逐级人数)——RECORD 硬性要求。
- 结局定义引用已发表算法定义并注明 PPV。
- 时间冻结日前置(坑点 5);按 IKN 分组评估。
- 报告区分度(AUROC/C 统计量)、校准(斜率/截距)、临床效用(决策曲线)三层。
- 亚组分析预设并申报最小样本量,输出遵循小单元抑制。
- 代码与 DCP 归档:论文接受后,分析代码应可(在协议允许范围内)供后续复现。
§8.4 相关数据集表
| 数据集 | 国家/地区 | 模态 | 访问模式 | 与 ICES 关系 |
|---|---|---|---|---|
| NHS HES | 英格兰 | 住院/门诊/急诊统计 | DARS 申请 | 同为"全民覆盖行政数据",无处方与理赔层 |
| CMS Medicare LDS | 美国 | 医保理赔+处方 | ResDAC 申请 | 65+ 人群与 ODB 互补;商业驱动编码差异 |
| SNDS | 法国 | 理赔+住院+死亡 | 委员会审批 | 全年龄处方覆盖,方法学上最接近的镜像 |
| Swedish NPR | 瑞典 | 住院/门诊登记 | 伦理+托管方审批 | 与社会登记链接深度相当 |
| Danish NPR | 丹麦 | 登记+理赔 | 申请制 | 北欧登记范式代表作 |
| SEER-Medicare | 美国 | 肿瘤登记+理赔 | 申请制 | 肿瘤纵深对照;ICES 以 OCR+BORN 补齐生命周期 |
| PCORnet | 美国 | 多中心 EHR 网络 | 网络协作 | EHR 范式对照:粒度更细、人群代表性更弱 |
| TriNetX | 全球 | 商业 EHR 网络 | 商业订阅 | 全球覆盖但偏专科中心人群 |
| MIMIC-III | 美国 | ICU EHR+波形 | 公开(受训要求) | 信号级互补;无人群代表性 |
| CDARS | 中国香港 | 公立医疗 EHR | 合作申请 | 单一支付方城市版对照 |
| ANZICS-APD | 澳新 | ICU 注册 | 申请制 | 注册库范式对照 |
§8.5 关键论文 Top 5
- Vermeulen MJ, Schull MJ, Azimaee M, et al. ICES: Data, Discovery, Better Health. Int J Popul Data Sci. 2020;4(2):1135. DOI: 10.23889/ijpds.v4i2.1135 —— 平台数据资源画像,架构/治理/访问流程的一手来源。
- Dolan D, Grainger J, MacCallum N, et al. The Institute for Clinical Evaluative Sciences: 20 Years and Counting. Healthc Q. 2012. DOI: 10.12927/hcq.2012.23194 —— 二十年建制史与数据特权由来。
- Redelmeier DA, Tibshirani RJ. Association between cellular-telephone calls and motor vehicle collisions. N Engl J Med. 1997;336(7):453-8. DOI: 10.1056/NEJM199702133360701 —— 病例交叉设计经典,政策影响范例。
- Benchimol EI, Smeeth L, Guttmann A, et al. The RECORD Statement. PLoS Med. 2015;12(10):e1001885. DOI: 10.1371/journal.pmed.1001885 —— 行政数据研究报告规范,ICES 科学家共同发起。
- Data Resource Profile: Better Outcomes Registry & Network (BORN) Ontario. Int J Epidemiol. 2021. DOI: 10.1093/ije/dyab033 —— 围产登记库画像,与 ICES 链接使用的关键伙伴库。
§8.6 社区活跃度
- 机构产出:五年 2,200+ 篇同行评审论文、238 份 AHRQ 政策报告(截至 2020-03)。
- 学术网络:300 名科学家跨 7 站点;HDRN Canada 创始成员;IPDLN 国际链接数据网络领导角色。
- 公众参与:公共咨询委员会与公众态度研究(CMAJ Open 2019)构成罕见的"社会许可"研究线。
- 人才管道:ICES Faculty Scholars Program 与学生/博士后项目持续向加拿大健康数据科学界输送研究者;ICES Western 等站点公开招生信息。
- 政策通道:AHRQ(Applied Health Research Question)机制让卫生系统决策者直接下单定制分析,研究到政策的距离以周计而非以年计。
对生态的观察:ICES 的社区不是围绕"数据集下载"形成的开源社区,而是围绕"方法学 + 访问服务"形成的制度型社区——论文、Atlas 报告、数据字典与训练项目四位一体。新进入者的高效路径是:先读数据字典与 IJPDS 画像,再通过 ICES Faculty Scholars 或与 ICES 科学家合作进入项目。
§8.7 生态快照表
| 资源 | 类型 | 链接 | 状态(截至 2026-09) | 推荐理由 |
|---|---|---|---|---|
| ICES 官网 | 机构门户 | https://www.ices.on.ca | 在线 | 权威信息入口 |
| ICES Data Dictionary | 数据字典 | http://datadictionary.ices.on.ca/ | 在线,月度快照 | 申请前必读的逐库元数据 |
| ICES DAS | 访问服务 | https://www.ices.on.ca/submit-a-request | 在线 | 第三方访问唯一正式通道 |
| IJPDS 数据资源画像 | 论文 | https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7477779 | 开放获取 | 架构与治理一手描述 |
| 隐私问答页 | 治理文档 | https://www.ices.on.ca?p=15383/ | 在线 | 公众与研究者隐私义务说明 |
| re3data 登记 | 仓库元数据 | https://www.re3data.org/repository/r3d100013992 | 在线 | 机器可读的仓库规模元数据 |
§9 相关资源与引用
§9.1 官方资源列表
- 官方主页:https://www.ices.on.ca
- 数据与隐私:About ICES Data、Data Dictionary
- 研究者服务:ICES DAS、Submit a Request、Analytic Services
- 治理与隐私:隐私问答、Privacy at ICES
- 新闻与年报:ICES News、2024/25 年度报告《Advancing with Evidence》
- 机构与站点:ICES Western(LHSCRI 页面)等站点入口
- 仓库元数据:re3data 登记
- 合作网络:HDRN Canada(跨省健康数据网络)与 IPDLN(国际人口数据链接网络)
新研究者入门顺序建议:官网 About → Data Dictionary(目标数据集条目)→ IJPDS 数据资源画像 → DAS 流程页 → 联系 das@ices.on.ca。
§9.2 BibTeX 引用块
@article{vermeulen2020ices,
title = {ICES: Data, Discovery, Better Health},
author = {Vermeulen, Marian J and Schull, Michael J and Azimaee, Mohammad and
Marra, Giovanna Cartagena and Vermeulen, Marc and Ho, Martin and
Guttmann, Astrid},
journal = {International Journal of Population Data Science},
year = {2020},
volume = {4},
number = {2},
pages = {1135},
doi = {10.23889/ijpds.v4i2.1135}
}
@article{dolan2012ices,
title = {The Institute for Clinical Evaluative Sciences: 20 Years and Counting},
author = {Dolan, Doug and Grainger, James and MacCallum, Nancy and
Creatura, Deborah and Forrester, Jacqueline and Shiller, Susan},
journal = {Healthcare Quarterly},
year = {2012},
doi = {10.12927/hcq.2012.23194}
}
@article{redelmeier1997association,
title = {Association between cellular-telephone calls and motor vehicle collisions},
author = {Redelmeier, Donald A and Tibshirani, Robert J},
journal = {New England Journal of Medicine},
year = {1997},
volume = {336},
number = {7},
pages = {453--458},
doi = {10.1056/NEJM199702133360701}
}
@article{mamdani2004cox,
title = {Cyclo-oxygenase-2 inhibitors versus non-selective non-steroidal
anti-inflammatory drugs and congestive heart failure outcomes in
elderly patients: a population-based cohort study},
author = {Mamdani, Muhammad and Juurlink, David N and Lee, Douglas S and others},
journal = {The Lancet},
year = {2004},
volume = {363},
number = {9423},
pages = {1751--1756},
doi = {10.1016/S0140-6736(04)16263-1}
}
@article{parkwyllie2006gatifloxacin,
title = {Outpatient gatifloxacin therapy and dysglycemia in older adults},
author = {Park-Wyllie, Laura Y and Juurlink, David N and Kopp, Alexander and others},
journal = {New England Journal of Medicine},
year = {2006},
volume = {354},
number = {13},
pages = {1352--1361},
doi = {10.1056/NEJMoa055516}
}
@article{benchimol2015record,
title = {The REporting of studies Conducted using Observational
Routinely-collected health Data (RECORD) Statement},
author = {Benchimol, Eric I and Smeeth, Liam and Guttmann, Astrid and others},
journal = {PLoS Medicine},
year = {2015},
volume = {12},
number = {10},
pages = {e1001885},
doi = {10.1371/journal.pmed.1001885}
}
§9.3 引用指南
- 引用平台本身:引 Vermeulen et al. 2020 数据资源画像(本词条 INFOBOX DOI),并在正文注明"数据由 ICES 持有"。
- 引用具体数据集:按数据字典条目命名(如 “Ontario Health Insurance Plan Claims Database, July 1991–April 2026, ICES”),并遵守数据托管方署名要求(MOH、CIHI、Cancer Care Ontario 等官方免责声明句式)。
- 引用衍生队列:引用对应算法定义原始论文,注明定义版本年份。
- 结果表述须含官方免责句:“The analyses, conclusions, opinions and statements expressed herein are solely those of the authors and do not reflect those of the funding or data sources; no endorsement is intended or should be inferred.”
§10 AI 使用声明卡
§10.1 AI 模型列表
| 模型 | 用途 | 版本/说明 |
|---|---|---|
| 千方撰写助手(大语言模型) | 词条初稿生成、结构与文献整理 | 千方病案医学编辑部内部工具链 |
§10.2 AI 参与范围
AI 参与了初稿撰写、章节结构组织、代码示例起草与语言润色;所有事实性内容(机构沿革、数据覆盖、法律条款、数字与引用)均经编辑部依据官方来源逐条核实;错误风险最高的叙述(访问流程、隐私条款)以官方页面原文为准逐句比对。
§10.3 输入来源列表
- ICES 官网 About ICES Data:https://www.ices.on.ca?p=11909/
- ICES Submit a Request:https://www.ices.on.ca/submit-a-request
- ICES DAS 公共部门访问流程:https://www.ices.on.ca/DAS/Public-Sector/Cohort-Disclosure-Workflow
- ICES Analytic Services 页面:https://www.ices.on.ca?p=13470/
- ICES 隐私问答:https://www.ices.on.ca?p=15383/
- ICES Data Dictionary:http://datadictionary.ices.on.ca/
- Vermeulen MJ, et al. ICES: Data, Discovery, Better Health. IJPDS 2020;4(2):1135:https://www.ncbi.nlm.nih.gov/pmc/articles/PMC7477779
- Dolan D, et al. 20 Years and Counting. Healthc Q 2012:https://dx.doi.org/10.12927/hcq.2012.23194
- ICES 新闻:Schull 卸任公告(2025-09-04):https://www.ices.on.ca/news-releases/ices-bids-farewell-to-longstanding-ceo-dr-michael-schull
- ICES 新闻:Guttmann 临时 CEO 任命(2025-09-29):https://www.ices.on.ca/news-releases/ices-announces-dr-astrid-guttmann-as-interim-ceo/
- ICES 新闻:官方名称采用 ICES(2019-02 发布):https://www.ices.on.ca/news-releases/new-ices-study-examines-how-the-public-feels-about-the-use-of-their-personal-health-data-in-research
- re3data.org ICES Data Repository 登记:https://www.re3data.org/repository/r3d100013992
- ICES Western FAQ(LHSCRI):https://www.lhscri.ca/facilities-and-technology/ices-western/faq
- HiCOSTT 研究协议(数据库清单与 PPV):https://pmc.ncbi.nlm.nih.gov/articles/PMC7843076/
- BORN Ontario Data Resource Profile(IJE 2021):https://www.ncbi.nlm.nih.gov/pmc/articles/pmid/34097034/
- 高通量 DDD 研究协议(数据库描述):https://pmc.ncbi.nlm.nih.gov/articles/PMC12552818
- Wikipedia ices 条目(沿革与代表性研究线索,均回溯至官方来源核实):https://wikiless.emy.plus/wiki/ICES
§10.4 人工校验表
| 内容模块 | 审核者 | 审核方式 | 审核状态 |
|---|---|---|---|
| 机构沿革与更名时间线 | 千方病案医学编辑部 | 官网新闻稿+20 周年纪念文逐条比对 | ✅ 已通过/已验证 |
| 数据源清单与时间覆盖 | 千方病案医学编辑部 | 数据字典快照+IJPDS 画像交叉核对 | ✅ 已通过/已验证 |
| PHIPA 治理与访问流程 | 千方病案医学编辑部 | 官方 DAS 流程页逐句比对 | ✅ 已通过/已验证 |
| DAIMS 字段字典与坑点 | 数据工程审核者 | 依 IJPDS 画像与验证文献复核 | ✅ 已通过/已验证 |
| 代表研究与引用 | 千方病案医学编辑部 | DOI 逐条解析 | ✅ 已通过/已验证 |
| 规模数字 | 千方病案医学编辑部 | re3data+官网现行口径双重确认 | ✅ 已通过/已验证 |
§10.5 AI 生成章节标注
初稿由 AI 生成,其中 §6 代码示例为按官方接口约定撰写的教学模板(未在 ICES 环境内实际执行),已在对应位置注明;其余章节事实均经人工核实后方收入正文。
§10.6 最后人工审核日期
2026-09-05
页面状态:published(全部内容已完成审核并发布)
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- nhis-nhid — 共享标签:公共卫生与流行病学 / 电子健康记录 / 卫生服务研究 / 药物安全
- ncdb — 共享标签:公共卫生与流行病学 / 电子健康记录 / 卫生服务研究 / 医疗登记
- seer-medicare — 共享标签:公共卫生与流行病学 / 电子健康记录 / 卫生服务研究 / 医疗登记
- SEER-NCI — 共享标签:公共卫生与流行病学 / 电子健康记录 / 医疗登记
- marketscan — 共享标签:公共卫生与流行病学 / 电子健康记录 / 卫生服务研究 / 药物安全
- premier-pinc-ai — 共享标签:公共卫生与流行病学 / 电子健康记录 / 卫生服务研究 / 药物安全
- openfda — 共享标签:公共卫生与流行病学 / 电子健康记录 / 药物安全
- GEMINI — 共享标签:公共卫生与流行病学 / 电子健康记录 / 卫生服务研究
- snds — 共享标签:公共卫生与流行病学 / 电子健康记录 / 药物安全
- meps — 共享标签:公共卫生与流行病学 / 电子健康记录 / 卫生服务研究
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。
