信息速览

NHIRD — 台湾健保理赔全人群数据库 AI-Ready Wikipedia
INFOBOX
| 字段 | 内容 |
|---|---|
| 数据集名称 | NHIRD(台湾全民健康保险研究数据库) |
| 英文全称 | National Health Insurance Research Database |
| 别名/简称 | NHIRD、NHI Research Database、健保资料库、LHID(纵向抽样子集) |
| 疾病分类(ICD-11) | 不限定单一疾病——覆盖 ICD-9-CM(2016 前)/ ICD-10-CM(2016 起)全部诊断编码;跨全疾病谱 |
| SNOMED CT | 无原生 SNOMED CT 标注;理赔诊断以 ICD 编码为主,可自行术语映射 |
| 数据模态 | 行政理赔档案:住院理赔、门诊(门急诊)理赔、药房处方、手术处置、被保险人登记、机构登记、专科医师登记 |
| AI 任务类型 | 预测性纵向建模、事件/结局预测、表型挖掘、药物效应与安全性、健康服务与卫生经济分析、罕见病监测、AI 辅助病历挖掘 |
| 样本总数 | 覆盖约 2,300 万中国台湾省参保人(NHI 参保率约 99%) |
| 数据大小 | 按申请变量/年份裁切输出;单项目请求 ≤10% 台湾人口(约 230 万人) |
| 数据格式 | 字段化数据文件,供 SAS/Stata/R/SPSS 在机房内读取分析 |
| 许可证 | 卫生福利部统计处研究许可(申请审批制,非公开下载) |
| 访问级别 | 申请审核(须 IRB + 卫生福利资料科学中心审批,仅机构内分析) |
| DUO 标签 | HMB + IRB + PUB(须伦理批准、生物医学研究、研究成果须发表) |
| 语言 | 中文(档案字段多为中文编码标签)、英文(研究文献) |
| 首发日期 | 1997(授权建立)/ 2002(NHRI 正式建制维护) |
| 最后更新 | 2025-11-25(AI 时代评审综述发布日期) |
| 发布机构 | 中国台湾卫生福利部统计处 / 卫生福利资料科学中心(HWDC) |
| 官方主页 | 卫生福利资料科学中心 |
| 下载地址 | 不提供公开下载;经 档案清单 审批后于机房内分析 |
| DOI | 10.4178/epih.e2018062(Data resource profile 原始论文) |
| 引用次数 | 420+(Semantic Scholar,截至 2026-09) |
| AI 就绪度评分 | ⭐⭐⭐(3/5)— 数据体量与跨库串联生态顶尖;扣分项:无公开直接下载、须机房现场分析、编码 2016 断点、缺实验室/生活方式协变量、无官方 ML 划分 |
| 页面状态 | published |
§0 E-E-A-T 与免责声明
医学审核者:[千方病案医学编辑部] 交叉审核:§2 医学背景(ICD-11/SNOMED 映射、疾病谱与全人群覆盖)、§7 质量评估与偏倚分析。
数据工程审核者:[千方病案医学编辑部交叉审核] 医疗 AI 数据工程师,审核范围:§4 DAIMS 数据字典、§5 数据划分策略、§6 预处理 Pipeline 和坑点。
审核日期:2026-09-05
医疗免责声明:本页面提供的医学信息仅供研究和教育目的,不构成医疗建议、诊断或治疗方案。数据集的医学描述基于公开发表的文献,未经逐一临床验证。任何基于该数据集训练的 AI 模型在应用于临床决策前,必须经过独立的临床验证和监管审批。
技术免责声明:本页面的代码示例、预处理建议和基准性能数据基于公开资料整理,不保证在特定环境下的准确性和适用性。使用者应自行验证代码安全性和数据预处理流程的正确性。千方病案医数集不对因使用本页面信息而导致的任何直接或间接损失承担责任。
数据使用合规:使用本页面描述的数据集前,请务必阅读并遵守数据集原始许可协议。NHIRD 数据不可公开下载,申请者须为中国人(台湾地区)或隶属中国台湾研究机构,须先取得机构伦理审查委员会(IRB)批准,且所有分析只能在经认证的卫生福利资料科学中心(HWDC)机房内完成,导出结果须经数据保管人审查。DUO 标签仅供参考,具体使用限制以数据集官方协议为准。
§1 数据集概览
§1.0 📌 30 秒速览
这是什么?
NHIRD 是中国台湾省全民健康保险(NHI)理赔数据整理成的全人群研究数据库。NHI 自 1995-03-01 上线的单一付款人强制医保,覆盖超过 99% 的中国台湾省居民(约 2,300 万人)。每当你去看门诊、住院、拿药、做手术,都会产生一笔理赔档案——NHIRD 就是把每一笔这类档案按人去识别化、加密、组织起来,让研究者能回看"整个省份的健康过程"。它像一份没有检查报告和病历文字的"健康账本",但体量覆盖一个地区的几乎所有人。
为什么重要?
它是全球规模最大的全国性人口理赔数据库之一,入选可比肩瑞典、韩国的国家级行政健康数据库之列。因为它覆盖几乎全部居民且无需招募即持续采集,天然没有志愿者偏差和失访偏差;配合中国台湾省全民统一身份证号,NHIRD 还能跨库串联癌症登记、死因登记、出生证明、传统医学等 70+ 个卫生福利数据库。单笔研究可覆盖 10% 人口(约 230 万人),足以支撑罕见病与长期用药结局研究。2014 年起每年有 300+ 篇同行评审论文基于它产出,涵盖药物流行病学、医疗质量、健康服务与真实世界证据。
我能用它做什么?
如果你是流行病学、药物警戒、卫生政策或医疗 AI 研究者,可用它做:预测性纵向建模(如从历史理赔轨迹预测再住院/死亡/并发症)、药物安全与疗效比较(活性对照 + 倾向评分 + landmark 法缓解偏倚)、疾病负担与流行趋势监测、健康服务利用与卫生经济分析,以及经癌症登记/死因库串联后的肿瘤与罕见病真实世界研究。注意:它不含实验室检验值、生活方式与病历文本,需要这些信息时须经跨库串联或在解读时标注局限。
§1.1 摘要
NHIRD 派生自中国台湾省国民健康保险(NHI)理赔档案。NHI 于 1995-03-01 启动,为单一付款人、强制参保的全民医保,参保率在 2004 年达 99.0%、2010 年达 99.5%(据 2025 综述更高),覆盖约 2,300 万中国台湾省居民。1997 年国家卫生研究院(NHRI)获授权为研究目的建立 NHIRD,并自 2002 年起正式建制维护,主要时间跨度覆盖 2000 年后门诊与住院理赔。数据库核心文件包括被保险人登记、门诊(门急诊)理赔、住院理赔、药房处方、医疗机构登记与专科医师登记等,可经加密个人标识(PIN)进行患者级串联。诊断编码 2016 年前用 ICD-9-CM,2016 年起改用 ICD-10(ICD-10-CM);用药以 NHI 专用药品码记录(非层级结构,研究常自行映射至 ATC)。
数据以三种形式释放:(i) 分层抽样库,在 2000/2005/2010 时间点各随机抽约 1-2 百万人(LHID 纵向健康保险库);(ii) 疾病特制库(如糖尿病库,至 2018 已有 13 个);(iii) 2016 年起开放的全人口库。2016-06 后管理权由中国台湾卫生福利部统计处与卫生福利资料科学中心(HWDC)集中管理。为强化隐私,所有数据仅在经认证的 HWDC 机构内通过远程虚拟桌面分析,不可带出;单项目最多请求 ≤10% 台湾人口。NHIRD 缺少实验室值与病历文本等深层临床细节,多数编码验证显示诊断 PPV 高于 70%,但样本往往非全国代表性,结果解读需谨慎。
治理沿革一页:NHIRD 的"资料治理"经历了从研究机构(NHRI)到政府部门(MOHW 统计处)的迁移。早期(约 1998-2016)由 NHRI 每年发布上年度理赔并以光盘交付研究者;2015-11 起要求现场分析;2016-06 MOHW 终止 NHRI 服务,将 NHIRD 纳入统计处与信息管理中心的集中管控(“资料不离部”),并部署研究分中心远程虚拟桌面(VDI)系统(2017 年底完成 10 处分中心)以缓解现场机位不足。这一迁移从"把数据交给研究者"转向"研究者在受控环境内分析数据",在隐私与产出之间形成新的平衡,也重塑了 AI 工作流(见 §6)。理解这段历史有助于判断数据可用形态与编码口径的前后变化。
§1.2 战略价值
维度一:国家级全人群覆盖的去偏差能力。 NHIRD 的核心价值在于"覆盖即是力量"——不需要入组、不需知情同意流程、不依赖特定医院网络,几乎所有居民(参保率约 99%)的就医行为都被纳入。这使得它天然规避了多数队列研究的选择偏差(selection bias)与志愿者/参与偏差(participation bias),能支撑近乎全国代表性的发病率、患病率、生存率与治疗模式估计。对中国台湾省这样医保几乎零门槛的地区,地理与社经上的医疗可及性差异也被大幅压缩,从而提升了真实世界证据(RWE)的外部效度。对卫生经济学家与政策研究者而言,理赔同时记录费用,可直接做成本-效果与预算影响分析。
维度二:跨库串联的多源证据生态。 由于全国统一身份证号被加密为假名标识且跨库同构,NHIRD 可与 HWDC 内的癌症登记、死因登记、出生证明、传染病、重大伤病、传统医学、免疫等 70+ 数据库串联。这让原本只有"账本"的理赔数据被补上肿瘤分期(癌症登记)、死因(死因库)、出生结局(出生证明)等关键临床信息,显著缓解理赔数据"无结局、无严重度"的短板。例如将 NHIRD 与 Taiwan Cancer Registry 串联即可获取 AJCC 分期用于肿瘤疗效研究。在药物警戒国际协作(如 Asian Pharmacoepidemiology Network,AsPEN)中,NHIRD 已成为核心亚洲数据源。
维度三:政策-临床-产业的循证闭环。 从药品上市后安全性(如抗凝药大出血)、疫苗安全(COVID-19)、到糖尿病照护质量(2012/2019 Diabetes Atlas 系列用 NHIRD 全档案 2000-2015),NHIRD 产出的真实世界证据长期反馈国家医保与临床指南。2016 年后引入实验室数据(2014 年起健保署要求收集检验结果、2017 年研究开放)、2017 年起的影像库(AI 自然语言处理可提取左心室射血分数等),使 NHIRD 从"纯理赔"向"多模态国家数据平台"演进,成为医疗 AI 训练与验证的基础设施。
§1.3 同类数据集横向对比
| 维度 | NHIRD(中国台湾省) | 瑞典全国登记(Sweden) | 韩国 NHIS 理赔库(Korea) | 美国 CMS Medicare 理赔 | MIMIC-III/IV(美国重症单中心) |
|---|---|---|---|---|---|
| 起始年份 | 1995(NHI) | 1955 | 1989 | 1990s | 2001(BIDMC) |
| 覆盖人口 | 约 2,300 万 | 约 1,000 万 | 约 5,000 万 | 约 6,000 万参保者 | 约 4-7 万 ICU 患者 |
| 单一付款人 | 是 | 是 | 是 | 否 | 不适用(医院单中心) |
| 住院理赔 | 是 | 是 | 是 | 是 | 是(住院本身) |
| 门诊理赔 | 是 | 是 | 是 | 是 | 否 |
| 药房处方 | 是 | 是 | 是 | 是(Part D) | 否(部分用药记录) |
| 传统医学(中医) | 是 | 否 | 是 | 否 | 否 |
| 跨库串联 | 癌症/死因/出生/传染病/传统医学等 70+ | 癌症/出生/死因等 | 癌症(部分) | 多州/SPARCS | 有限(内部表) |
| 实验室/检验值 | 2017 起研究开放 | 部分 | 部分(检查库) | 有限 | 是(丰富) |
| 病历自由文本 | 否 | 部分 | 部分 | 有限 | 是(护士/医生笔记) |
| 访问模式 | 申请审批 + 机房内分析 | 申请(不同机构不同) | 申请 | 购买/申请 | 注册 + 诚信认证 + 下载 |
| 差异化亮点 | 几乎全覆盖 + 跨库 70+ 串联生态 + 手术/处方明细 | 超长 60+ 年历史 | 最大体量(5 千万) | 处方 + 长随访 | 高粒度 ICU 生理波形 + 病历 |
数据对比主体依据 Hsing & Ioannidis (JAMA Intern Med 2015) 的全国性数据库比较表与公开文档;MIMIC 行仅作参照示例,NHIRD 与其它行政理赔库的可比性最高。
§1.4 版本时间轴
| 时间 | 事件 | 说明 |
|---|---|---|
| 1995-03-01 | NHI 启动 | 全民健保开始,理赔数据开始累积 |
| 1997 | NHIRD 获授权建立 | 国家卫生研究院获授权建立研究库 |
| 1998 | BNHI 委托 NHRI | 委托 NHRI 建立并维护 NHIRD(早期) |
| 2000 | 数据年度更新开始 | 纳入 2000 年后门诊与住院理赔;2000 年抽样 LHID2000 |
| 2002 | NHRI 正式建制维护 | NHIRD 面向公共研究(另一来源口径) |
| 2005 / 2010 | LHID2005 / LHID2010 | 每年抽样 1 百万代表参保人 |
| 2012 | IRB 要求生效 | NHIRD 研究自 2012 起须先获 IRB 批准 |
| 2015-11 | HWDC 现场分析制 | 研究者须在 HWDC 机构内现场分析 |
| 2016 | ICD-10-CM 切换 | 诊断编码自 ICD-9-CM 转 ICD-10-CM(编码连续性断点) |
| 2016-06 | 管理权移交 | MOHW 终止 NHRI 的 NHIRD 服务,转由统计处/HWDC 集中管理;全人口库对研究开放 |
| 2016 | 全人口库开放 | 覆盖约 2,300 万人的全量理赔对研究可用 |
| 2017 | 实验室数据研究开放 | 检验结果(2014 起采集)可用于研究 |
| 2017- | 影像与 AI 应用 | 影像库建立,AI 辅助特征抽取进入文献 |
| 2025-11 | AI 时代综述 | Hsieh et al. 系统总结 NHIRD 在 AI/因果/数据安全的演进 |
§1.5 典型应用场景
- 药物流行病学与安全性监测:比较抗凝药在大出血风险、抗精神病药与心源性猝死、COVID-19 疫苗安全性等——常以 NHIRD 理赔轨迹 + 死因/重大伤病串联为结局,配合活性对照与 landmark 设计。
- 长期纵向结局预测的医疗 AI:将个人历史门诊/住院/处方序列(表型序列)输入时序模型预测再住院、死亡、慢性病并发症;数据量大且单次覆盖 ≤10% 人口(约 230 万人)足以支撑深度学习。
- 健康服务与卫生经济:理赔含费用,可做成本-效果分析、支付制度改革评估(如 pay-for-performance)、医疗资源与就医利用的地区差异。
- 罕见病与肿瘤真实世界研究:跨库串联癌症登记获取 AJCC 分期,研究肝癌(含马兜铃酸相关 HCC)、SLE 家族聚集等罕见/低患病率结局。
- 药物警戒国际多库比较:作为 AsPEN 核心亚洲数据源,在统一协议下与韩国、瑞典等作跨国人群比较。
常见误区快速澄清:
| 误区 | 实际 | 正确姿势 |
|---|---|---|
| “NHIRD 就是 EHR” | 是理赔行政档案,非临床电子病历 | 按理赔/报销口径解读,勿当病历明细 |
| “可直接下载开箱训练” | 审批制 + 机房内分析,不可下载 | 先 IRB + 申请,mock 预研 |
| “理赔诊断=真诊断” | 报销编码,PPV 病种依赖 | 病种级验证后再作结局 |
| “覆盖全人群=无偏差” | 覆盖优但仍有服务利用/编码/未测混杂 | 见 §7.1 偏倚表 |
| “单库即可回答所有问题” | 深层临床变量缺失 | 跨库串联 + 明示局限 |
§2 医学背景
§2.1 ICD-11 编码映射
NHIRD 本身以 ICD-9-CM(2016 前)与 ICD-10-CM(2016 起)记录理赔诊断,而非 ICD-11。下表给出常见研究表型在现行 ICD-11 语境下的等价类别,供跨编码时代的语义对齐参考:
编码体系沿革速览:2016-01 起台湾地区健保理赔自 ICD-9-CM 全面切换至 ICD-10(ICD-10-CM)。此前(1997-2015)研究档案以 ICD-9-CM 记录诊断;2016 后以 ICD-10-CM 记录。两体系对同一临床表型的覆盖并不完全等价,例如出血性卒中和某些心脏病细分在跨版时口径有变化。凡跨越 2016 的纵向研究,必须按时代分别定义表型或采用两体系都稳定的保守编码(详见坑点 5)。ICD-10 时代(2020 后发表)的验证研究显示多数病种 PPV 与 ICD-9 时代相当或更优(如急性缺血性卒中 PPV≈92.7%、青光眼≈92.2%)。ICD-11 目前在理赔端尚未启用,仅作语义对齐的参考框架。
| 临床领域 | ICD-9-CM 研究常用码(历史) | ICD-10-CM 对应(2016 起) | ICD-11(语义参考) | 中文说明 |
|---|---|---|---|---|
| 缺血性卒中 | 433.x-436.x(部分) | I63.x | 8B10-8B12(脑缺血) | 急性缺血性卒中(验证 PPV≈92.7%) |
| 急性心肌梗死 | 410.x | I21.x | BA41(急性心肌梗死) | 心血管结局常用 |
| 2 型糖尿病 | 250.x0 / 250.x2 | E11.x | 5A11(2 型糖尿病) | Diabetes Atlas 系列核心表型 |
| 高血压 | 401.x-405.x | I10-I15 | BA00-BA05(血压升高) | 慢病负担研究 |
| 青光眼 | 365.x | H40.x | 9C61(青光眼) | 验证 PPV≈92.2% |
| 心房颤动 | 427.31 | I48.x | BC81(房颤) | 抗凝与栓塞研究 |
| 慢性阻塞性肺病 | 490-496(含 491/492/496 定义不一) | J44.x | CA22(COPD) | PPV 依 spirometry 提升 |
| 癫痫 | 345.x | G40.x | 8A61-8A64 | 验证研究常见 |
| 肝癌(HCC) | 155.x | C22.0 | 2C12 | 马兜铃酸/他汀相关研究 |
§2.1b SNOMED CT 映射
NHIRD 无原生 SNOMED CT。理赔诊断以 ICD 编码承载,研究经术语映射到 SNOMED CT 以对接 OMOP CDM 与跨库互操作。下表为常见概念的 SNOMED CT 语义对照(映射为研究约定,非官方):
| 概念 | ICD-10-CM | SNOMED CT 概念码 | SNOMED 术语(英文) |
|---|---|---|---|
| 缺血性卒中 | I63.9 | 422504002 | Ischemic stroke |
| 急性心肌梗死 | I21.9 | 57054005 | Acute myocardial infarction |
| 2 型糖尿病 | E11.9 | 44054006 | Type 2 diabetes mellitus |
| 高血压 | I10 | 38341003 | Hypertensive disorder |
| 心房颤动 | I48.91 | 49436004 | Atrial fibrillation |
| 慢性阻塞性肺病 | J44.9 | 13645005 | Chronic obstructive pulmonary disease |
§2.2 疾病谱与流行病学价值
NHIRD 是跨全疾病谱的行政数据库,不针对单一疾病。其流行病学意义在于提供一个近乎全人口的"观测台",用于疾病负担、发病/患病趋势与长期生存的真实估计。中国台湾省人口老龄化的独特背景(65 岁以上人口占比从 1990 年约 6.2% 预计到 2025 年达 20%)使得慢病(糖尿病、心血管病、慢性肾病、高血压)与老年共病的纵向研究尤其有分量。代表性流行病学产物包括:
- 2012 / 2019 Diabetes Atlas:以 NHIRD 全档案 2000-2015(约 2,300 万人)系统描绘糖尿病发生率、患病率、并发症与照护质量趋势。2019 系列报告显示台湾地区糖尿病照护质量提升(患者死亡率下降、因心脑血管病住院率下降),但 <19 岁及 20-39 岁女性糖尿病发生率分别上升 27% 与 33%,并指出透析患病率持续上升等未决挑战。
- 癌症与马兜铃酸研究:分子流行病学提示马兜铃酸(AA,中药成分)与台湾地区 HCC 相关;NHIRD 数据分析发现含 AA 中草药增加 HBV 患者 HCC 风险。此类"行政 + 生物标志"交叉研究凸显理赔库与登记串联的价值。
- 他汀与肝癌:多项 NHIRD 队列研究提示他汀类降脂药与 HBV/HCV 患者 HCC 发生率下降相关;nucleoside analogues(核苷类似物)抗病毒治疗降低 HBV 患者肝切除后 HCC 复发。
需强调:理赔编码反映"被诊断/被报销"的事件,未必等同真实患病;编码有效性随疾病与机构层级而异,解读流行病学数值须参考 §2.6 的验证证据与 §7 的偏倚讨论。
代表性"方向-发现"证据摘录(定性,供选题参考):
| 研究方向 | 代表性发现(证据级别:观察性) | 数据要素 |
|---|---|---|
| 糖尿病全国流行病学 | 2019 Diabetes Atlas 显示死亡率/心脑血管住院率下降、年轻女性发生率上升 | 全档案 2000-2015 + 用药 + 死因 |
| 中药安全性 | 含马兜铃酸(AA)中草药与 HBV 患者 HCC 风险相关 | 理赔 + 传统医学 + 癌症登记 |
| 心血管二级预防 | 血运重建后他汀/抗血小板/ACEI-ARB/β 阻滞剂使用与 MACCE(心源性猝死复合终点)关联 | LHID2000 + 处方 + 术后随访 |
| 肝脏肿瘤化学预防 | 他汀与 HBV/HCV 患者 HCC 发生率负相关;核苷类似物降低 HBV 肝切除后复发 | 理赔 + 癌症登记分期 |
| 抗凝/抗精神病安全性 | 理赔轨迹 + 死因/重大伤病确认大出血、心源性猝死 | 处方 + 硬结局串联 |
| 灾难性健康冲击 | 921 地震(1999)后应激相关精神疾病二十年前瞻 | 长随访 + 精神诊断 |
| 自闭症长期结局 | 自闭症全因与特定死因死亡率全国性分析 | 长随访 + 死因库 |
以上方向与数字来自 Data resource profile 综述、2019 Diabetes Atlas、PHOENICS/CLEP 综述及多篇 NHIRD 队列论文(见 §8.5 关键论文与 §10.3 来源列表);具体效应量请查原论文,勿把观察性关联当作因果。
§2.3 临床任务定义
理赔档案虽非逐病种设计,但可在其上定义标准流行病学/AI 任务:
| 任务类型 | 定义(在 NHIRD 上的操作化) | 典型用法 |
|---|---|---|
| 发病率/患病率估计 | 以 ICD 编码 + 复诊次数(如 ≥3 门诊或 ≥1 住院)定义新发/现患 | Diabetes Atlas、慢病监测 |
| 结局识别(表型) | 以首次主诊断编码 + 死因/癌症登记串联定义事件 | 卒中、MI、HCC、死亡 |
| 预测性纵向建模 | 以历史理赔序列(表型/用药)为特征预测未来结局 | 再住院/死亡/并发症 ML |
| 治疗比较(药物警戒) | 以处方起止日期定义暴露,比较不同方案结局 | 抗凝、抗精神病药、疫苗 |
| 预后分层 | 结合共病编码(Charlson/Elixhauser 映射)做风险分层 | 生存分析、成本分层 |
| 健康服务与卫生经济 | 以费用/机构/就医频次度量利用与成本 | pay-for-performance 评估、预算影响 |
§2.4 患者人群表
| 维度 | NHIRD 覆盖 | 说明 |
|---|---|---|
| 来源人群 | 全体 NHI 参保人(中国台湾省) | 参保率约 99%,约 2,300 万人 |
| 时间范围 | 主要档案覆盖 1997/2000 年起至申请年度 | 全人口库 2000-2016(早期口径);现持续更新 |
| 年龄 | 全年龄(含儿童与老人) | 出生登记串联可定义新生儿 |
| 性别 | 记录(受试者性别字段) | 参与理赔按就医发生 |
| 种族/族裔 | 单一地区以华人为主 | 跨地区比较需经国际多库研究(AsPEN) |
| 就医类型 | 门诊、急诊、住院、药房、手术/处置 | 不含自费/自付项目(如医美) |
| 非覆盖群体 | 未参保者(<1%)、自费服务 | 保险中断/死亡由登记触发事件记录 |
§2.5 临床价值
NHIRD 的临床价值在于规模 + 长随访 + 跨库补全。对于药物警戒,它是罕见不良反应与长期安全性信号的主要来源之一,常作为上市后监测的补充证据。对于真实世界疗效比较,它能在伦理上无法做 RCT 的人群中估计有效性,配合死因库补全生存结局。对于临床决策支持,它提供全国性的共病谱、医疗利用路径与成本基线。跨库后它能承载肿瘤分期(癌症登记)、出生缺陷(出生证明)、严重疾病确认(重大伤病卡)等理赔库本身缺失的硬临床结局,显著提升基于理赔定义的结局可信度。正因如此,NHIRD 在中国台湾地区本土及亚洲真实世界证据生态中扮演支柱角色。
§2.6 金标准与标签确立
理赔数据库的"标签"来自报销驱动的主诊断/次诊断编码,而非独立临床标注,故必须做外部验证。NHIRD 的金标准确立方式与证据如下:
| 划分/结局 | 标注方式 | 标注者 | 性质与验证证据 |
|---|---|---|---|
| 诊断标签(ICD-9-CM 时代) | 医院按报销规范填写主/次诊断码 | 医疗编码人员/医生 | 多数诊断 PPV>70%;样本小且非全国代表性 |
| ICD-10-CM 时代验证 | 对照疾病登记或病历审查 | 临床专家图表审查 | 卒中 PPV 92.7%、青光眼 92.2%、精神疾病窄/宽类目 PPV/敏感度 ≥0.70 |
| 死亡结局 | 死因登记/重大伤病串联(非理赔内) | 死因库/机构 | 理赔库无全面死亡标志,须跨库补全 |
| 肿瘤结局 | Taiwan Cancer Registry(AJCC 分期)串联 | 癌症登记机构 | 理赔 + 登记交叉确认 |
| 用药暴露 | 药房处方档起止日期 | 健保报销 | 依 NHI 药品码/ATC 映射;依从性无法核实(未吃无法知) |
关键教训:任何基于 NHIRD 的新表型在发表前应做编码效度验证(对照当地病历或登记),并引用验证文献;编码换版(2016)后旧算法应重验。
§3 数据集规格
§3.0 版本抉择矩阵
NHIRD 不以"版本号"发布,而是按数据规模与用途提供若干形态。多形态共存,选择矩阵如下:
| 你的需求 | 推荐形态 | 规模/样本 | 理由 |
|---|---|---|---|
| 快速、低成本、预算有限的高患病率疾病研究 | LHID(LHID2000/2005/2010,1 百万/批次) | 各 100 万参保人 + 后续理赔 | 审批更快、成本更低、文件小、具全国代表性(NHRI 已验证) |
| 需全量病例或罕见病、无需先抽样 | 疾病特制库(如糖尿病库) | 某病种全部患者(如糖尿病 2002-2015) | 直接聚焦病种,可串联癌症/死因 |
| 最大统计功效、跨病种全人群研究 | 全人口库(2016 起) | 约 2,300 万(覆盖 99%) | 全量理赔,亚组/罕见结局统计功效最大 |
| 需实验室检验/影像/深层结局 | 全人口或疾病库 + HWDC 串联 | 依目标 | 仅 HWDC 内可按 PIN 串联实验室(2017 起)与影像库 |
| 探索学习、非正式分析 | HWDC 提供的 mock 数据集 | 100,000 名受试者 | 供编写统计语法与流程,不含真实可分析结论 |
§3.1 模态详情
NHIRD 的核心模态是健保理赔行政档案,属临床与行政混合的"电子健康记录-行政"类别。主要模态与子模态:
| 子模态 | 内容 | 备注 |
|---|---|---|
| 门诊(门急诊)理赔 | 每次门诊/急诊就诊的就医日期、费用、诊断码、处置 | 含复诊信息,用于 ≥3 门诊定义慢病 |
| 住院理赔 | 入院/出院日期、主/次诊断、手术处置、费用 | 含手术/处置码 |
| 药房处方 | 处方药品起止日期、NHI 药品码、剂量/天数(部分) | NHI 药品码非层级,常映射 ATC |
| 手术/处置 | 处置与手术编码、施行机构 | 独立处置档 |
| 被保险人登记 | 人口学、保险类别、参保起止 | 事件触发登记(出生/死亡/退出) |
| 机构登记 | 医疗机构属性 | 跨库串联机构信息 |
| 专科医师登记 | 医师专科信息 | 可评估照护者特征 |
| 实验室数据(2017 起研究开放) | 检验结果 | 2014 起健保署强制收集,2017 开放研究 |
| 影像库(近年) | 影像文件 + 档案 | AI 辅助特征抽取(如左心室射血分数) |
理赔档案与临床 EHR 的差异提示:NHIRD 属于"行政理赔(claims)“而非"结构化临床电子病历(EHR)”。理赔记录的是被报销的服务(一次门诊、一次住院、一笔处方),其诊断是报销填写的主/次码,处置/药品以健保编码记录,不含自由文本病史、生命体征、病理报告或影像原始判读。因此面向 AI 时,它更适合做人群级纵向表型与结局轨迹建模,而不适合做需要临床细粒度变量的即时诊断任务。若要实验室或影像,须在 HWDC 内按 PIN 与对应库串联(2017 后实验室、近年影像库),这带来模态对齐但不改变理赔为主的性质。
§3.2 按子集样本数
| 子集 | 样本规模 | 备注 |
|---|---|---|
| 全人口库 | 约 2,300 万参保人 | 覆盖 >99%;单项目申请 ≤10% 人口(约 230 万) |
| LHID(纵向健康保险库) | 每批次 100 万(LHID2000/2005/2010/2015) | 分层随机、全国代表、NHRI/HWDC 验证 |
| 200 万抽样库(早期口径) | 约 200 万 | 2000/2005/2010 时间点分层抽样的早期形态 |
| 疾病特制库 | 病种全体患者 | 至 2018 有 13 个(糖尿病等) |
| mock 数据集 | 100,000 名受试者 | 供语法编写,非真实分析数据 |
§3.3 格式
| 文件类型 | 格式 | 读取软件 | 说明 |
|---|---|---|---|
| 理赔/登记档案 | 字段化数据文件(早期 .dbf/ASCII 式字段,现按申请提供) | SAS/Stata/R/SPSS | 机房内受控读取 |
| 假名标识 | 加密 ID 字段 | 同上 | 供库内串联,不可带出 |
| 诊断码 | ICD-9-CM / ICD-10-CM 文本/码 | 同上 | 2016 切换 |
| 药品码 | NHI 专用药品码 | 同上 | 需自行映射 ATC |
NHIRD 早期通过光盘(compact discs)交付物理介质给研究者;2016 集中管理后改为仅在 HWDC 机房内分析,无公开文件打包下载。
§3.4 存储大小
NHIRD 不公开"单一数据包大小"的稳定数字——因数据按申请变量与年份裁切,且全量理赔极为庞大(覆盖 2,300 万 × 多年 × 多档)。实践中单项目受 ≤10% 人口与变量裁切约束,实际可分析文件量级因裁切而异。本条目数字不可得,省略具体 GB 值,仅提示全量库体量远超单机直接处理能力,须在 HWDC 提供的分析环境(含 SAS/Stata/R/SPSS)内开展。
§3.5 标注方式
NHIRD 的"标注"不是由数据集提供方人工标注,而是来自医疗报销流程的附带产物:
| 元素 | 标注方式 | 驱动方 |
|---|---|---|
| 诊断 | 医疗院所按报销规范填写主/次 ICD 码 | 医生/编码人员(报销驱动) |
| 手术/处置 | 处置编码 | 医疗院所 |
| 用药 | 处方档药品码 + 起止 | 健保报销 |
| 患者属性 | 被保险人登记人口学 | 健保署 |
| 跨库硬结局 | 由癌症/死因/出生登记提供 | 各登记机构 |
§3.6 标注者资质与一致性
编码质量因机构层级而异——研究显示医学中心与区域医院的编码质量优于地区医院。同一诊断在不同机构、不同报销情境下的敏感度与 PPV 波动较大(如 COPD 的 PPV 文献报告在 50.4%-92.0% 区间)。编码一致性受报销激励影响:因为理赔以报销为目的,诊断可能在"最大化报销"与"最小化审查"间被调节。因此做跨机构研究时应考虑机构层级作为混杂/效应修饰,并优先引用目标机构层级的验证文献。
§3.7 采集周期
理赔在每次就医/取药时由医疗院所提交至健保署,属事件触发的实时申报;研究档案则年度更新。2016 前 NHIRD 由 NHRI 每年发布上年度数据(曾以光盘交付);2016-06 后由 MOHW 统计处/HWDC 年度汇总维护。数据档刷新为 yearly(年),数据源最后刷新日期约 2025-01-01(HMA-EMA 目录口径)。注册事件(出生、参保开始、死亡、退保、出境、保险终止)在登记中触发去注册。
§3.8 地域覆盖
覆盖中国台湾省全岛及其离岛/行政区的医保就医人群。因台湾地区医疗机构密度高(每乡镇至少 1 家,诊所约 2 万家+、医院约 500 家),地域就医可及性差异相对小,但仍存在城乡(如台北市与台东县)间寿命与医疗利用差异,研究宜纳入居住地区/乡镇作为协变量。
| 地域维度 | 数据可得性 | 使用提示 |
|---|---|---|
| 县市/乡镇居住地 | 参保登记含居住地区 | 分层抽样(LHID)即按年龄/性别/地区 |
| 就医机构层级 | 机构登记 + 就诊院所 | 医学中心/区域/地区/基层医院编码质量不同 |
| 城乡差距 | 反映在服务利用与结果 | 用地区作为协变量/交互,勿忽略 |
| 跨境比较 | 理赔仅限省内签约院所 | 出境就医/自费境外服务不入库 |
理赔只捕捉"在健保签约院所内被报销"的服务。台湾居民偶发性的境外就医或未申报服务不会被记录,跨国比较(如 AsPEN)须靠统一协议控制就医路径差异。
§3.9 设备与采集技术
理赔数据来源是健保报销信息系统的结构化申报(电子申报)。2003 年起台湾地区电子病历在各医院被规范并标准化,为后续数字化与数据交换奠基。NHIRD 分析环境为 HWDC 提供的受控工作站/远程虚拟桌面(VDI),含 SAS、Stata、R、SPSS;无自有生物样本(biospecimen:无)。
跨库串联的技术基础:NHIRD 跨库可串联性的根基是中国台湾省全国统一身份证号,各行政/健康登记(出生、死亡、癌症、免疫、传染病、重大伤病、传统医学、血库等)共用同一编号体系;在 HWDC 内被统一加密为同构假名 PIN 后即可按 PIN 精确串联。这与无统一全国标识的系统(如分散式美国医疗网络)形成鲜明对比,是 NHIRD 能够做多源全人群研究的关键技术前提。
§3.10 深度溯源链
| 层级 | 环节 | 责任方 |
|---|---|---|
| 原始事件 | 居民就医/取药/手术 | 参保人 + 医疗院所 |
| 申报 | 电子理赔申报(含诊断/处置/费用) | NHI 签约院所 → 健保署 |
| 汇整 | 理赔申报被组织为研究文件 | NHI 署 / NHRI(早期)→ MOHW |
| 去识别化 | 姓名/ID/出生日加密为假名;第三方核验 | MOHW 统计处 |
| 集中管理 | 中心化至 HWDC,跨库串联,机房分析 | HWDC / 统计处 |
| 申请释放 | IRB + 科学委员会审批,按变量裁切 | MOHW 统计处 |
| 研究分析 | 机房内 SAS/Stata/R/SPSS,输出审查 | 研究者 + 数据保管人 |
§4 数据结构
§4.0 目录树
NHIRD 不以解压即得的标准目录发布;此处以概念性文件组织(反映其数据表结构)展示研究视角的预期目录,供编写解析代码时参考:
nhird_project/ # 依申请裁切的研究文件(HWDC 机房内)
├── registry_for_beneficiaries.csv # 被保险人登记(人口学/参保状态)
├── ambulatory_claims/ # 门诊(门急诊)理赔
│ ├── amb_care_YYYY.csv # 逐年门诊理赔
│ └── amb_order_YYYY.csv # 逐年门诊医嘱/处置
├── inpatient_claims/ # 住院理赔
│ ├── inpt_admit_YYYY.csv # 逐年住院
│ ├── inpt_order_YYYY.csv # 逐年住院医嘱
│ └── surgery_YYYY.csv # 逐年手术/处置
├── pharmacy_prescriptions/ # 药房处方
│ └── rx_YYYY.csv # 逐年处方
├── registry_of_medical_facilities.csv # 医疗机构登记
├── registry_board_specialists.csv # 专科医师登记
└── linked_registries/ # 经 HWDC 串联的外部库(按申请)
├── taiwan_cancer_registry.csv # 癌症登记(含 AJCC 分期)
├── death_registry.csv # 死因登记
└── birth_certificate.csv # 出生证明
§4.1 DAIMS 字段字典(核心表)
以下 8 列表格描述核心字段(基于公开的 Data resource profile 与系列综述所述结构;具体字段名依申请裁切由 HWDC 提供为准):
| 字段名 | 类型 | 说明 | 示例值 | AI 用途 | 观测误差 | 信息性缺失编码 | 取值范围 |
|---|---|---|---|---|---|---|---|
| ID(加密假名) | Text/Integer | 患者级加密标识,可库内串联 | enc_7f3a... |
纵向主键 | 低(加密同构) | 不适用 | 全参保人 |
| SEX | Text | 受试者性别 | 男 / 女 | 分层/协变量 | 极低 | 未填则缺失 | 男、女 |
| BirthDate(加密) | Date | 出生日期(加密后仅年/部分) | 1965 | 年龄计算 | 极低 | 缺失年龄样本被排除 | 全年龄 |
| ResidencyRegion | Text | 居住地区/乡镇 | 台北市 | 地理/城乡分层 | 中(居住地可能滞后) | 缺失则排除 | 县市/乡镇 |
| InsuredClass | Text | 保险类别(雇工/农渔/军眷等) | 雇工 | 社经代理 | 中 | 无法定薪者另类 | 多类 |
| VisitDate / AdmitDate | Date | 门诊/住院日期 | 2015-06-30 | 时序特征 | 极低 | 事件触发 | 2000-申请年 |
| ICD_Code | Text | 主/次诊断 ICD 码 | I63.9(卒中) |
表型/标签 | 中-高(报销驱动) | 有就诊无诊断少见 | ICD-9-CM/10-CM |
| ProcedureCode | Text | 处置/手术码 | 33077B(PCI) |
手术定义 | 中 | 无处置则为空 | 健保处置码 |
| DrugCode | Text | NHI 药品码 | BC22128100(部分) |
用药暴露 | 中(需 ATC 映射) | 未取药无法知 | NHI 码表 |
| RxStartDate / Days | Date/Int | 处方起止/天数 | 2015-07-01, 30 | 暴露时长 | 中(依从不核实) | 依从不可观测 | 依处方 |
| CostAmount | Float | 医疗/申报费用 | 125,000(住院) | 卫生经济 | 中(申报口径) | 无 | 依报销 |
| RegistryFlag | Text | 跨库事件标志(死因/癌症) | death_2020 | 硬结局 | 低(登记权威) | 未发生则空 | 各登记库 |
注:不同理赔/登记表以加密 PIN 作为串联键;费用与编码字段名可能随 HWDC 裁切目录而命名不同,务必以申请档案随附的 codebook 为准(NHIRD 无统一公开 codebook,官方档案清单为字段基准)。
§4.2 标签分布
NHIRD 无"预置标签"统计;诊断标签分布依研究目标病种裁剪差异巨大,且随编码时代变化。研究层面的典型分布观察(定性,非固定值):
| 现象 | 说明 |
|---|---|
| 慢病高患病编码 | 高血压/糖尿病等编码密集,可按 ≥3 门诊稳定识别 |
| 急性事件稀疏 | 卒中/MI 相对稀疏但识别敏感 |
| 结局异质性 | 同一病种院内/门诊编码 PPV 差异 |
| 编码换版影响 | 2016 ICD-9→ICD-10 改变分布连续性 |
不公布固定标签分布数字,因 NHIRD 非固定标注数据集,分布随裁剪与研究目标变动。
§4.3 关键统计
| 统计量 | 数值 | 来源/说明 |
|---|---|---|
| NHI 参保率 | 约 99%(2004 达 99.0%,2010 达 99.5%;综述口径更高) | JAMA Intern Med 2015 / 各综述 |
| 覆盖人口 | 约 2,300 万 | 综述一致口径 |
| 抽样库单批 | 100 万(LHID) | NHRI/HWDC |
| 疾病特制库数 | 13 个(至 2018) | Lin 2018 |
| 可串联数据库 | >70(现每中心 ≥65) | HWDC 文档 |
| 单项目可请求上限 | ≤10% 台湾人口(约 230 万) | NHRI 政策 |
| 年发表研究数 | ≥300/年(2014 起) | Lin 2018 |
| 累计同行评审论文 | >2,700(至 2018 口径) | Lin 2018 |
| 代表性论文引用(Data resource profile) | 420+ | Semantic Scholar,截至 2026-09 |
数字口径提示:NHI 参保率在不同年代、不同文献中表述为 99.0%(2004)、99.5%(2010)、99.6%、99.9% 乃至 99.99%——差异主要源于统计口径(在保人数 vs 应保人数、时间点、是否含中缀),故本文统一以"约 99%"表达并保留年代级来源;论文/综述数字也类似地逐年更新,引用时请核对原文献与统计年度,勿将早期固定值当作现值。理赔量、疾病发病等动态统计同样逐年变化,任何具体绝对值都应带"截至 YYYY"标注后使用。
§4.4 数据层级
理赔库的数据层级为行政事件驱动而非影像/序列多层结构:
参保人(被保险人登记)
└── 多次就医(门诊/急诊/住院)
└── 每次就医
├── 诊断(ICD 码,主/次)
├── 处置/手术(手术码)
├── 处方(药品码 + 起止,可发生于门诊/出院后药房)
└── 费用
跨库串联(可选)
└── 死因 / 癌症(分期)/ 出生证明 / 传统医学 / 实验室
- 分析单元 = 参保人(随访时间轴由各就医/处方事件的时间戳构成)。
- 纵向分析在"人-时间"网格上组织(每人的事件序列 + 生存/结局)。
队列构建示意(以某药物长期安全研究为例,对应 LHID2000 上常见做法):
1) 自 LHID2000 登记取出 2000-2004 年间"新诊断"某病的参保人
(洗脱期:索引前 1 年无该病编码)
2) 索引日 = 首次诊断日;随访自索引日始,至结局/死亡(死因库)/退保/2013-12 止
3) 暴露 = 索引日后某窗口内是否取得研究药品处方(依处方起止)
注意:仅用索引日后、按"首次用药日期"做 new-user,不做 prevalent-user
4) 对照:活性对照或经倾向评分/诊断代码匹配的非用药者
5) 结局 = 经死因库/重大伤病卡确认的硬终点,避免仅用理赔编码软终点
6) 分性别/年龄/地区亚组 + 多 landmark 敏感性分析(规避 immortal time,见坑点 3)
这段流水线是把 §4.1 字段字典转成可分析队列的标准操作化模板;具体字段名随 HWDC 裁切目录而异,须以申请档案随附说明核对。
§4.5 缺失值与信息性缺失
| 场景 | 缺失含义 | 处理建议 |
|---|---|---|
| 无住院记录 | 未住院(多数人群) | 视为"无该事件",非缺失 |
| 年龄/性别/居住地缺失 | 登记不完整样本 | 研究常排除(如 CDC 慢病研究排除无 SES/地区样本) |
| 未取药(有处方无执行) | 依从性不可观测 | 用续方(proportion of days covered)近似 |
| 无实验室/生活方式 | NHIRD 深层临床信息缺失 | 须跨库串联或明示局限 |
| 自费服务 | 医美/自付项目不入库 | 不能从理赔推断全服务利用 |
| 结局未编码但实际发生 | 编码漏报(PPV/敏感度依赖病种) | 用登记/死因/多来源补全 + 验证 |
| 小单元计数 | 细胞规模小致再识别风险 | <3 名受试者结果禁止导出 |
§5 数据划分与使用建议
本节回答"拿到 NHIRD 后,如何不犯错地把人群拆成可训练/可验证的样本"。核心原则:NHIRD 没有预置 ML 标签,也没有官方 train/test 划分;你要先做两件事——(1) 用理赔/登记定义并验证你的表型与结局;(2) 用"时间"而不是"随机"来切分,从而规避 2016 编码换版与信息泄漏。下面是官方形态、社区惯例、泄漏重点与验证建议的逐一展开。
§5.1 官方划分
NHIRD 不提供"训练/验证/测试"的 ML 官方划分,也不提供带标注的基准。官方提供的"划分"体现在数据形态选择上:LHID(抽样)vs 疾病库 vs 全人口库——这是规模/代表性划分而非任务划分。用于监督学习的标签需研究者自行从理赔/登记定义并做验证。
§5.2 社区惯例划分
基于 NHIRD 的研究普遍按时间划分:
| 惯例 | 做法 | 用途 |
|---|---|---|
| 洗脱期(clean/washout window) | 用队列前 1-2 年理赔排除既有病例、确认为新发 | 定义"新诊断/新使用者" |
| 索引期 + 随访期 | 以索引事件为 t0,随访至结局/死亡/退保 | 生存分析时间轴 |
| 编码换版缓冲 | 2016 前后跨版研究预留转换期或分时代建模 | 避免 ICD-9/10 混杂 |
| 训练/验证切分 | 依时间(如先入列者训练)或依区域切分 | 预测模型避免泄漏 |
§5.3 泄漏风险(重点)
理赔数据泄漏风险典型且隐蔽:
| 泄漏源 | 说明 | 缓解 |
|---|---|---|
| 索引日期前暴露用错 | 以随访中才发生的用药分类基线暴露 → immortal time | 仅用索引日期前信息分类;new-user + active-comparator |
| 结局定义信息性 | 结局可能驱动后续就诊/编码(如筛查诱导) | 用登记/死因硬结局 + 敏感性分析 |
| 区域/机构泄漏 | 分层抽样按区域,模型学入区域 → 外推失败 | 区域外验证 + 随机效应/聚类 |
| 编码换版 | 2016 前后代码体系不同混入特征 | 按时代建模或加时代哑变量 |
| 时间泄漏 | 用未来理赔构建共病(如查后见之明) | 只用索引日前的理赔做基线 |
§5.4 交叉验证建议
- 采用时间序列感知的交叉验证:按日历年度滚动切分(如训练 2005-2012、验证 2013-2015、测试 2016+),避免随机 CV 破坏时序并混入 2016 编码换版。
- 因编码换版,跨版模型应逐时代报告指标。
- 类不平衡(罕见结局)用分层抽样或事件加权;模型在内部验证后务必做外部验证(见 §7.8)。
§5.5 外部验证建议
- 首选跨 HWDC 数据库外部验证(如对照 Taiwan Cancer Registry 的肿瘤结局)。
- 次选国内/国际同类行政库(韩国 NHIS、瑞典登记)作迁移验证(AsPEN 协作框架)。
- 结果被 <3 受试者单元格截断是 HWDC 导出限制,须在外部验证矩阵中说明不可导出单元的缺失。
§6 AI 就绪指南
§6.0 云端快速启动
NHIRD 不能云端/本地一键启动——受隐私法规约束,数据只能在 HWDC 机房内分析,无法导出到云 GPU。AI 工作流的现实路径:
- 在 HWDC 机房内用 R/Python 完成特征工程,输出脱敏聚合特征。
- 将经审查可带出的聚合/合成结果在自有算力上继续训练与部署。
- 或使用 HWDC 内提供的软件栈(SAS/Stata/R/SPSS)直接建模。
- 利用 mock 数据集(100,000 受试者)在本地预研 pipeline 语法。
因此本指南重点落在机房内可复现的清洗、编码映射与验证,而非云端 DataLoader。
§6.1 快速上手
# ============================================================
# 目录结构预期(HWDC 机房内申请裁切后的研究目录)
# nhird_project/
# registry_for_beneficiaries.csv 被保险人登记
# ambulatory_claims/ 门诊理赔(逐年)
# inpatient_claims/ 住院理赔(逐年)
# pharmacy_prescriptions/ 药房处方(逐年)
# data_root 即申请裁切后为你分配的目录
# NHIRD 无统一公开 codebook;字段名以申请档案随附说明为准
# 最小可用子集 = registry + 单年门诊/住院 + 处方 即可启动时序建模
# ============================================================
import pandas as pd
DATA_ROOT = "/path/to/nhird_project" # 依申请分配,替换之
# 读入被保险人登记(最小子集起点)
reg = pd.read_csv(f"{DATA_ROOT}/registry_for_beneficiaries.csv",
dtype={"ID": str, "SEX": str, "BirthYear": str})
# 读入某年住院理赔
inpt = pd.read_csv(f"{DATA_ROOT}/inpatient_claims/inpt_admit_2016.csv",
dtype={"ID": str, "ICD_Code": str, "VisitDate": str},
parse_dates=["VisitDate"])
print("registry rows:", len(reg), "| inpt rows:", len(inpt))
§6.2 数据获取
访问模式:申请审批制(非公开下载)。 流程要点(依据 Data resource profile 与系列综述):
| 步骤 | 说明 |
|---|---|
| 1. IRB 批准 | 申请者须先获机构伦理审查委员会(IRB)批准 |
| 2. 资格 | 申请人须为中国人(台湾地区)或隶属中国台湾研究机构 |
| 3. 提交计划书 | 向卫生福利资料科学中心(HWDC/Data Science Centre)提交研究计划,注明所需方法与变量 |
| 4. 审查 | MOHW 审查合法性 + 3 名专家组成科学委员会审阅;有异议升送上级咨询委员会二审 |
| 5. 计费 | 依变量数与时间计(约 1 变量 1 年 = 200 新台币);不同子集计费不同 |
| 6. 现场分析 | 获批后于 HWDC 机构内/远程 VDI 分析;禁带电子/记录设备 |
| 7. 输出审查 | 分析结果经数据保管人审查后方可带出;<3 受试者结果禁止导出 |
# NHIRD 无公开下载 API。以官方链接作为申请/档案入口占位:
APPLY_URL = "https://dep.mohw.gov.tw/DOS/cp-5119-59201-113.html" # 申请/审批清册
FILES_URL = "https://dep.mohw.gov.tw/DOS/lp-2503-113-xCat-DOS_dc004.html" # 档案清单
# 数据须在机房分析;本代码仅示意入口,真实取数需完成审批与现场分析
访问现实:谁、在哪、能带什么走
| 现实约束 | 具体规则 | 对项目的影响 |
|---|---|---|
| 申请主体 | 中国人(台湾地区)或隶属中国台湾研究机构;境外学者以协作身份参与 | 需本地 PI 或合作者承接申请与在场分析 |
| 分析场所 | 仅 HWDC 机构内工作站或远程 VDI;数据不可下载 | 算法研发须在机内完成或产出脱敏聚合后再导出 |
| 审查 | 3 人科学委员会 + 必要时上级二审;统计处审合法性 | 计划书须含明确方法、变量、期限与费用预算 |
| 计费 | 依变量数 × 时间(如 1 变量 1 年 ≈ 200 新台币) | 控制变量数与年份以控成本 |
| 软硬件 | 机内提供 SAS/Stata/R/SPSS | 备好可运行的机内脚本,离线无法反复调试 |
| 输出 | 结果经保管人审查;<3 受试者抑制 | 小样本/边缘单元格结果可能被删除或需合并 |
| 联机数据库 | 可分为可串联(linkable)与仅外释(released)两类 | 串联类(HWDC 内)可做跨库,外释类已脱敏且不可再串联 |
关键提示:mock 数据集(100,000 受试者)是机外预研 pipeline 的合法通道;正式分析语法先在 mock 上冻结,再赴 HWDC 对真实数据运行,可显著降低机内反复试错的排队与成本。
§6.3 预处理全流程
理赔数据预处理的四大动作:读取与字段清洗 → 编码标准化 → 时间轴与暴露定义 → 表型/结局派生。
import pandas as pd
import numpy as np
DATA_ROOT = "/path/to/nhird_project"
# ---------- 1) 读取并统一字段名 ----------
reg = pd.read_csv(f"{DATA_ROOT}/registry_for_beneficiaries.csv",
dtype={"ID": str, "BirthYear": str, "SEX": str, "Region": str})
inpt = pd.read_csv(f"{DATA_ROOT}/inpatient_claims/inpt_admit_2016.csv",
dtype={"ID": str, "ICD_Code": str, "VisitDate": str,
"AdmitDate": str, "DischargeDate": str})
# ---------- 2) 标准化时间戳(日期字段常为 yyyyMMdd 字符串) ----------
for c in ["VisitDate", "AdmitDate", "DischargeDate"]:
if c in inpt.columns:
inpt[c] = pd.to_datetime(inpt[c], format="%Y%m%d", errors="coerce")
# 计算年龄(出生年常仅暴露年份以保护隐私)
birth_year = pd.to_numeric(reg["BirthYear"], errors="coerce")
inpt = inpt.merge(reg[["ID", "BirthYear", "SEX", "Region"]], on="ID", how="left")
# ---------- 3) 清洗:仅保索引诊断且去重注意多诊断 ----------
# 理赔内同一患者多行代表多次诊断/医嘱,勿当重复删除;只去真正全列重复
inpt_clean = inpt.drop_duplicates(subset=["ID", "AdmitDate", "ICD_Code"])
inpt_clean = inpt_clean.dropna(subset=["ID", "AdmitDate"])
# ---------- 4) 标准表型函数:诊断码前缀(ICD-10 时代用三/四字符) ----------
def is_stroke(icd: str) -> bool:
"""I63 缺血性卒中;ICD-10-CM。验证 PPV≈92.7%。"""
return isinstance(icd, str) and icd[:3] == "I63"
inpt_clean["stroke_event"] = inpt_clean["ICD_Code"].map(is_stroke).astype(int)
# ---------- 5) 共病派生(Charlson/Elixhauser 常需跨次诊断聚合) ----------
def charlson_from_codes(code_list):
"""示意:Charlson 权重需对 ICD 段做完整映射,此处仅列框。"""
return 0 # 实际需引入完整 comorbidity 映射表(见坑点 6 建议)
print("cleaned rows:", len(inpt_clean),
"| any stroke events:", int(inpt_clean["stroke_event"].sum()))
标准化的完整处理步骤清单(从原始理赔到分析用"人-时间"表):
| 步骤 | 动作 | 关键防错 |
|---|---|---|
| 1 | 统一字段类型与时间戳(yyyyMMdd → datetime) | 出生年可能仅年,勿当全日期 |
| 2 | 去除全列重复;区分"多行=多诊断" | 只去真正重复行,勿丢多次诊断 |
| 3 | 把门诊/住院/处方三类事件合并为每人事件表 | 各档用同一加密 ID 做键 |
| 4 | 定义索引日与洗脱期(索引前 1-2 年清历史) | 索引日 = 首次诊断/首次处方 |
| 5 | 用索引日前信息构建基线共病与用药特征 | 严禁用未来理赔(§5.3) |
| 6 | 映射药品码→ATC 并按大类归组 | NHI 药码非层级(坑点 4) |
| 7 | 补全硬结局(死因/癌症/重大伤病串联) | 理赔无全面死亡标志 |
| 8 | 时间序列切分 + 分时代报告 | 规避 2016 换版(坑点 5) |
| 9 | 按性别/年龄/地区分层审计 | 公平性与编码质量分层 |
# ---------- 6) 药品 ATC 映射示意(NHI 药码→成分→ATC,需本地映射表) ----------
# 真实做法:维护 drug_code -> atc 字典(来源:健保药品清单 + 自行映射)
drug_map = {"BC22128100": "C10AA05", "AC01327100": "A10BA02"} # 示意,勿作真实映射
def atc_of(nhi_code: str) -> str:
return drug_map.get(str(nhi_code), "")
# ---------- 7) 人-时间监督表聚合(供 §6.4 使用) ----------
def timeline_to_wide(events, baseline_end):
"""把每人事件流在基线窗口内聚合成宽特征。"""
cols = {}
for pid, grp in events.groupby("ID"):
base = grp[grp["event_date"] <= baseline_end]
cols.setdefault(pid, {})
cols[pid]["n_visits"] = len(base)
cols[pid]["total_cost"] = base["cost"].sum()
for a in base["atc3"].dropna().unique(): # atc 前 3 位归组
key = "atc3_" + str(a)[:3]
cols[pid][key] = cols[pid].get(key, 0) + 1
return pd.DataFrame.from_dict(cols, orient="index")
# 注:以上为可复现流程骨架,正式实现以申请档案 codebook 与机内可读格式为准。
§6.4 时序 DataLoader 概念
因数据只在机房且无公开直接文件,以下给出在机房可用软件内构造"人-时间"监督样本的参考,不假设可随意读文件系统。以每人历史理赔特征预测"1 年内心血管事件"为例(伪代码级,可平移为 R/Python 于 HWDC 环境执行):
import pandas as pd
from collections import defaultdict
# 数据结构:每行=某患者某次的理赔事件(门诊/住院/处方合并,含时间戳+诊断+处置+药品)
# 目标:把每个患者事件序列转成监督样本 (X=基线窗口特征, y=结局)
def build_supervision(events, index_date, horizon=365):
"""把每个人的事件流切成 训练样本:
- 基线窗口:index_date 前 365 天内的理赔用于构建特征
- 标签 y:index_date 后 horizon 天内是否发生结局(如 stroke_event)
关键防泄漏:特征只允许用 index_date 前信息,绝不使用未来理赔。
"""
Xs, ys, ids = [], [], []
for pid, grp in events.groupby("ID"):
feats = defaultdict(int)
base = grp[grp["event_date"] < index_date]
for _, r in base.iterrows():
feats["visit_" + r["type"]] += 1
feats["dx_" + r["ICD_Code"][:3]] += 1 # 仅用前缀防稀疏
out = grp[(grp["event_date"] >= index_date) &
(grp["event_date"] < index_date + pd.Timedelta(days=horizon))]
y = int(out["stroke_event"].sum() > 0)
Xs.append(feats); ys.append(y); ids.append(pid)
return ids, Xs, ys
# 时间序列感知划分(§5.4):按 index_date 所在年度滚动,规避 2016 编码换版
# train: index_date in 2012-2014 ; test: index_date in 2017+
# 若须跨 2016,将 ICD 前缀按 I63 vs 433 分段分别建模或加时代哑变量(见坑点 7)
§6.5 坑点(NHIRD 特有,8 个)
⚠️ 坑点 1:诊断编码是报销产物,未做病种级效度验证会系统性误分类(分类:标签理解)
问题:NHIRD 的诊断来自报销驱动编码,其 PPV/敏感度随病种、机构层级差异巨大;直接用单一编码定义病例会把假阳性当作事件。
症状:结局率异常偏高、效应估计被稀释/放大、与登记库对账时大量不一致。
解决:
- 简单方法:对每个目标病种引用已发表验证文献(如卒中 PPV≈92.7%、青光眼≈92.2%、多数 >70%),在方法学注明依据。
- 进阶方法:用 ≥2 次门诊或 ≥1 住院 + 主诊断 + 复诊组合提高特异度;结合重大伤病卡/癌症登记硬确认。
- SOTA 方法:对无验证的病种(尤其精神疾病、罕见病)自行做当地病历/登记抽查验证(如 2025 首次精神疾病验证研究取 727 名住院图表审查),并报告敏感性分析。
参考:Hsieh et al. 2025 review
⚠️ 坑点 2:无实验室值、生活方式与疾病严重度,直接建模有未测混杂(分类:偏倚陷阱)
问题:NHIRD 无吸烟/BMI/化验/严重度;比较用药时"开药对象更健康/更病重"产生 confounding by indication,未测混杂无法被观测协变量去除。
症状:观察性用药研究出现显著但不真实的"保护/风险"关联,复现 RCT 失败。
解决:
- 简单方法:明示局限,用新使用者(new-user) + 活性对照(active comparator)设计压选择偏差。
- 进阶方法:跨库串联实验室(2017 起)与死因/癌症/重大伤病补测混杂与硬结局;用假结果对照(negative control outcome)。
- SOTA 方法:倾向评分/逆概率加权 + landmark + 阴性/阳性对照 + 自我对照病例系列(SCCS)组合,见 §5.3。
参考:CLEP past and future
⚠️ 坑点 3:immortal time / 时变暴露处理不当会捏造疗效(分类:工程陷阱)
问题:把随访期内才开始的用药拿来基线分组,使"暴露组"在开始用药前必须活到那刻,人为制造生存优势。
症状:暴露组生存曲线异常好、HR 显著有利但机制可疑。
解决:
- 简单方法:只依据索引日期前的用药定义暴露;把随访起点对齐暴露开始。
- 进阶方法:时变暴露(时间相依 Cox)或 landmark 分析(预设 landmark 日,如治疗后 6 个月),可参见相关方法综述。
- SOTA 方法:采用治疗策略+宽限期框架,或以边缘结构模型处理时变混杂;做多 landmark 敏感性分析。
参考:Epidemiological approaches review
⚠️ 坑点 4:用药以 NHI 药品码记录且非层级,直接拿药品码做匹配易错(分类:工程陷阱)
问题:NHI 药品码不具 ATC 那样的解剖-药理层级,跨产品归组困难,且相似码不代表同类药。
症状:把同类药拆成多组、或把不同代药品误并;ATC 映射偏差导致暴露分类错误。
解决:
- 简单方法:维护药品码→成分名映射表,按成分/品牌归组。
- 进阶方法:自行映射至 WHO ATC 码(研究惯例),形成层次化归组与同类比较。
- SOTA 方法:构建成分级药品字典并做编码正确性抽查;处方起止配合 PDC 测依从性。
参考:Data resource profile
⚠️ 坑点 5:2016 ICD-9→ICD-10 编码换版制造跨时代断点(分类:工程陷阱)
问题:2016-01 起诊断由 ICD-9-CM 改 ICD-10-CM;两体系语义不完全对齐,简单拼接会在换版点制造伪突变。
症状:发病率/特征分布恰在 2016 出现不自然的阶跃/断崖。
解决:
- 简单方法:把 2016 作为时代断点,分时代报告;避免把 2016 前后特征混入同一窗口。
- 进阶方法:为每个研究表型准备 ICD-9↔ICD-10 映射并在跨版窗口用保守定义(只保留两体系都稳定的编码)。
- SOTA 方法:分别验证两时代的 PPV(见 2020+ ICD-10 验证文献),并做连续性检验确认趋势非编码假象。
参考:Hsieh et al. 2025
⚠️ 坑点 6:共病/表型定义常套用他国代码映射,理赔口径导致 Charlson/Elixhauser 失准(分类:标签理解)
问题:Charlson/Elixhauser 映射表多为 ICD-9/10-CM 的美版实现,直接套用可能漏算或误算台湾地区理赔情境的共病。
症状:风险分层分值系统性偏离、与登记确认的共病谱不一致。
解决:
- 简单方法:使用已在台湾地区验证的共病映射脚本(如 NCKU 团队工具,见 CLEP 综述引用),记录映射来源。
- 进阶方法:以"基线窗口≥2 次门诊或≥1 住院"确认共病,降低单次编码噪声。
- SOTA 方法:用登记库(如糖尿病库)交叉校验共病定义,报告 Kappa/PPV。
参考:CLEP review 2019
⚠️ 坑点 7:机房内分析 + <3 受试者抑制 + 无外部文件系统,工程流水线难复现(分类:工程陷阱)
问题:数据不可带出、不能带记录设备、小细胞结果被抑制、输出须审查,导致第三方难以端到端复现,且单元计数保护会删去尾部样本。
症状:发表代码无法在别处运行、结果在小样本/边缘单元出现"被抑制"空缺。
解决:
- 简单方法:在 HWDC 内把所有分析与聚合脚本一并留档,随附 mock 数据复现语法。
- 进阶方法:全程在机内生成可导出的脱敏聚合表,凡涉及 <3 计数的指标改为范围/融合再导出。
- SOTA 方法:采用 distributed network / common data model(OMOP/Sentinel)方式,让 NHIRD 站点只需返回聚合结果,规避细胞抑制并保隐私(AsPEN/CDM 路线)。
参考:HMA-EMA NHIRD catalogue
⚠️ 坑点 8:以单库结果做因果结论,忽视缺失死亡/实验室/自费信息导致的选择偏倚(分类:偏倚陷阱)
问题:理赔库"无住院=健康"的默认假设掩盖未就医者;失随访(退保/出境)处理不当造成信息性删失;过度挖掘产生 fishing expedition 型假阳性。
症状:忽略删失后生存率虚高;对全库做大量关联探索产生不可重复发现。
解决:
- 简单方法:用死因登记补全死亡结局,处理失随访(如保险终止=删失),明确"服务利用"非"真实健康"。
- 进阶方法:将自费/未就医视为信息性缺失处理(§4.5),作敏感性分析。
- SOTA 方法:坚持先验假设 + 预注册 + 校正多重比较;联动死因/出生/癌症登记补全结局做完整-case 分析,规避 fishing expedition。
参考:CLEP past and future external criticism
§6.6 数据增强
理赔序列的"增强"需谨慎,因事件是真实稀疏观测,不宜臆造临床事件。
| 做法 | 安全 ✅ / 危险 ❌ | 说明 |
|---|---|---|
| 时间扰动作随访窗口敏感性 | ✅ | 多 landmark/随访长度敏感性分析稳健性 |
| 聚合前缀降维(ICD 三字符) | ✅ | 减少稀疏,需保留编码信息 |
| 用登记补全结局 | ✅ | 跨库硬结局补全删失 |
| 人工合成"额外就诊"增强 | ❌ | 会改变真实就医强度 |
| 随机翻转诊断码 | ❌ | 引入无意义噪声与误分类 |
| 用观测计数直接当缺失插补而不过滤 | ❌ | 见坑点 8 |
§6.7 模型推荐
| 任务 | 推荐模型族 | 输入 | 说明 |
|---|---|---|---|
| 静态表型预测(再住院/死亡) | 梯度提升树(XGBoost/LightGBM) | 基线窗口聚合特征 | 稳定、可解释、类不平衡友好 |
| 理赔序列预测 | Transformer / LSTM / 时序编码 | 事件序列(诊断+用药) | 需大量数据,注意 2016 断点 |
| 用药效应比较 | 时间相依 Cox / 边缘结构模型 | 人-时间 | 因果推断主导 |
| 罕见事件监测 | SCCS / 负二项 | 病例自身对照 | 抗时不变混杂 |
| 表型挖掘 | 无监督聚类/主题模型 | 共病共现矩阵 | 适合探索,需验证 |
表型(特征)工程要点(理赔建模的成功很大程度取决于表型而非模型):
# 常见可解释特征构造方向(理赔特征偏好稳定、低卡、可复现)
FEATURE_FAMILIES = {
"利用强度": ["门急诊次数", "住院次数", "急诊次数", "处方笔数", "总费用"], # 捕捉就医强度/severity proxy
"共病负担": ["Charlson/Elixhauser 汇总", "关键病种计数"], # 风险分层
"用药暴露": ["药品大类是否使用", "PDC 依从", "累计用药日"], # 药物警戒
"程序处置": ["是否手术/血透/器械", "处置频次"], # 资源与进展
"机构路径": ["就医医院层级", "跨机构次数", "地区"], # 系统交互
}
# 原则:只用"索引日前"信息造特征;分类变量做低基数编码;连续费用宜 log 化。
§6.8 硬件需求
因分析须在 HWDC 机房内、用其受控工作站/VDI(配 SAS/Stata/R/SPSS),自有硬件主要用于 mock 预研与聚合后建模:
| 阶段 | 硬件 | 规模说明 |
|---|---|---|
| mock 预研 | 常规工作站(8-16GB RAM) | 100,000 受试者 |
| 全量/10% 人口建模 | HWDC 工作站/远程 VDI | 覆盖 2,300 万,机内计算 |
| 深度学习(若可行) | 视 HWDC 授权 GPU 而定 | 数据不可导出云,须机内资源 |
| 导出后模型部署 | 自有算力 | 仅脱敏聚合特征 |
硬件现实提醒:NHIRD 的"算力边界"是隐私边界而非性能边界——真实全量数据不落地自有服务器,这是合规硬约束而非可选优化。若追求大模型训练,应与 HWDC 评估授权环境或走联邦/通用数据模型(OMOP/Sentinel)路线,让各站点在本地算完后只回传聚合结果。
§6.9 评估指标
# 理赔预测常用指标(分类 + 生存),示意可平移 R/Python
# 分类:受试者工作特征曲线下面积(AUC-ROC)、精确率-召回、Brier
def binary_metrics(y_true, y_score):
from sklearn.metrics import roc_auc_score, average_precision_score, brier_score_loss
return {
"roc_auc": round(roc_auc_score(y_true, y_score), 3),
"avg_precision": round(average_precision_score(y_true, y_score), 3),
"brier": round(brier_score_loss(y_true, y_score), 4),
}
# 生存:C-index、校准、1-/5- 年绝对风险
# 药效:HR + 95%CI,附 E-value 量化未测混杂可推翻结论所需强度
§6.10 MLOps 笔记
- 版本与断点:把 2016 编码换版与 2017 实验室开放当作数据版本里程碑,随管线记录时代标记。
- 可复现性:因机房限制,在 mock 数据(100,000 受试者)上冻结 pipeline,机内全程脚本留档,交付脱敏聚合 + 复现语法。
- 隐私合规:遵守 <3 细胞抑制与输出审查;不经审查不将任何个体级记录带出。
- 跨库:如需实验室/死因/癌症,须在申请中声明串联并在 HWDC 内一次性完成,模型输入须只含可复现脱敏特征。
- 监测漂移:理赔口径随健保政策逐年变化,部署后定期重评估分布与 PPV。
§7 质量评估与局限性
§7.1 已知偏倚表
| 偏倚类型 | 描述 | 严重程度 | 缓解 |
|---|---|---|---|
| 报销驱动编码 | 诊断/处置为报销填写,真实临床可能漏/误 | 中-高 | 病种级验证 + 多来源补全 |
| 编码质量机构差异 | 医学中心优于地区医院 | 中 | 分层/调整机构层级 |
| 未测混杂 | 无吸烟/BMI/生活方式/化验 | 高(因果研究) | new-user+active comparator+SCCS+E-value |
| 服务利用偏倚(informed presence) | 就医频繁者更可能被编码 | 中 | 对照"非利用"样本 + 敏感性分析 |
| 自费/未就医遗漏 | 医美、自付项目不入库 | 中 | 明确"服务利用"口径 |
| 失随访/退出 | 退保/出境信息性删失 | 中 | 死因补全 + 完整-case 分析 |
| 编码换版偏倚 | 2016 ICD-9→10 | 中 | 分时代 + 映射 + 连续性检验 |
| 无 opt-out | 参保人不能退出(伦理争议) | 政策级 | 合规使用 + 最小化识别风险 |
§7.2 标注质量
诊断标注质量整体呈"中等偏高、病种与机构依赖"。主流综述(Data resource profile)报告多数诊断 PPV>70%,但原始验证样本小、多来自有限几家医院,未达全国代表性。ICD-10 时代(2020 后)的验证研究给出较亮眼数据:急性缺血性卒中 PPV≈92.7%、青光眼≈92.2%;2025 年首次精神疾病验证(727 住院图表审查)显示精神分裂等窄类/宽类目 PPV 与敏感性 ≥0.70,且 ICD-10 时代普遍优于 ICD-9 时代。尚无 I 级全国性大样本验证项目正式发布结果前,仍建议按病种引用当地验证并谨慎解释。
编码效度证据的实用分层(读者按自己的表型匹配):
| 你的结局 | 证据强度 | 建议动作 |
|---|---|---|
| 卒中/MI/房颤/糖尿病/高血压/青光眼 | 高(多中心 PPV≥90% 或 ≥70%) | 直接采用常规编码,注明验证来源 |
| 癌症(HCC 等) | 高(须与癌症登记交叉确认) | 理赔码 + TCR 分期/登记确认 |
| 精神疾病 | 中-高(2025 首次系统验证) | 用验证过的窄/宽类目,勿用稀疏子类 |
| COPD/慢性病 | 中(PPV 波动大,机构依赖) | 加 spirometry/检查条件提 PPV |
| 无验证的罕见病/新表型 | 低 | 自行图表/登记抽查验证后再发表 |
铁律:“有人验证过这个病”≠“你的算法也被验证”——换版(2016)、换机构层级、改复诊条件都会改变 PPV;每个新表型在正式发表前都应做一次方法学层面对照。
§7.3 泛化性表
| 场景 | 失效风险 | 证据 |
|---|---|---|
| 从理赔研究推至真实发病率 | 中-高(编码漏/误) | 验证 PPV 病种依赖 |
| 单一机构定义外推到全国 | 中 | 编码质量随层级 |
| 台湾地区模型迁移到其它人群 | 中-高(体制/编码/人群差异) | 需国际多库外部验证 |
| 用药观察结论推至 RCT 样本人群 | 高(未测混杂) | 见坑点 2 |
| 需实验室/影像的深层诊断 | 高(数据缺失) | 2017 前无实验室、无自由文本 |
| 罕见病/低患病率监测 | 中(样本 + 编码稀疏) | 跨库 + 重大伤病确认 |
§7.4 伦理
NHIRD 涉及全民参保、无 opt-out 的敏感健康数据,长期存在隐私争议:多个公民团体曾就 MOHW 使用 NHIRD 提起诉讼;2017 年中国台湾地区最高行政法院裁定使用 NHIRD 于研究合法,但能否让参保人退出数据库仍在讨论。为平衡隐私与研究,NHIRD 采取多重管控:去识别化(姓名/ID/出生日加密、独立第三方核验)、仅机房内分析、禁带设备、输出审查、<3 受试者抑制。2012 前 NHIRD 研究不需 IRB 曾被指为伦理漏洞,2012 起强制 IRB 批准。研究者须遵守计算机处理个人数据保护相关法规并签署不逆向识别协议。
§7.5 公平性
- 覆盖公平:几乎全覆盖使社经/城乡可及性差异被压缩,属优势。
- 编码公平风险:弱医疗依赖/边缘人群就医少 → 编码稀疏 → 模型对其预测置信度过低(informed presence)。
- 公平评估建议:按性别、年龄带、城乡/地区、保险类别分群报告指标;检测模型在稀疏就医人群的偏差。
§7.6 数据漂移
理赔数据随健保政策、编码体系、医疗技术逐年漂移。已识别的结构性漂移点:2016 ICD-9→ICD-10(诊断口径漂移)、2017 实验室数据加入(模态扩张)、治疗模式随指南演变(用药漂移)、2019 后(如 COVID-19)服务利用模式变化。部署模型应设置年度分布监测与 PPV 再评估。
| 漂移维度 | 结构性事件 | 对模型的影响 | 监测与缓解 |
|---|---|---|---|
| 诊断编码 | 2016 ICD-9→ICD-10 | 编码分布/表型口径改变 | 分时代建模 + 映射 + 连续性检验 |
| 模态范围 | 2017 实验室数据开放 | 特征空间扩大 | 记录特征获取年代,谨慎回填 |
| 治疗模式 | 指南/新药上市 | 用药暴露分布漂移 | 年度再校准 + 新药窗口 |
| 服务利用 | COVID-19 等冲击 | 就医强度/构成改变 | 冲击前后分段 + 敏感性 |
| 政策口径 | 健保支付/编码规则调整 | 理赔内容逐年变 | 订阅政策公告 + 定期 PPV 复查 |
漂移治理要点:任何"预测理赔轨迹"的生产模型都必须把数据版本/时代标记纳入 schema,并在重训时校验特征分布与关键结局 PPV 是否随年度漂移;发现断崖式变化先排查编码/政策事件(如 2016、2020),再谈模型更新。
§7.7 DAIMS 24 项评估
| # | 检查项 | 状态 | 说明 |
|---|---|---|---|
| 1 | 宽格式 | ✅ | 理赔以人-事件-字段宽化,适合人-时间建模 |
| 2 | 唯一标识 | ✅ | 加密 PIN 可库内/跨库串联 |
| 3 | 特殊字符 | ⚠️ | 字段多中文编码标签,跨软件编码需一致 |
| 4 | 重复行 | ✅ | 多诊断/医嘱为多行,非重复,需语义去重 |
| 5 | 缺失编码 | ⚠️ | 年龄/性别/地区缺失样本常被排除 |
| 6 | 标签标识 | ⚠️ | 无预置标签,标签须自行从编码定义并验证 |
| 7 | 罕见类分组 | ✅ | 罕见病经跨库 + 重大伤病确认 |
| 8 | 偏倚评估 | ⚠️ | 报销驱动编码 + 未测混杂需系统性处理 |
| 9 | 数据字典 | ⚠️ | 无统一公开 codebook,字段以申请档案为准 |
| 10 | 信息性缺失解释 | ✅ | 无住院≠缺失;依从/自费为信息性缺失 |
| 11 | 设备记录 | ✅ | 无自有设备级记录(行政库,机构登记可用) |
| 12 | 共线性 | ⚠️ | 共病/服务频次高共线,建模需注意 |
| 13 | 编码映射 | ⚠️ | ICD-9/10、NHI 药码↔ATC 须显式映射 |
| 14 | 时间戳处理 | ✅ | 事件驱动时间戳,出生/死亡触发登记 |
| 15 | 划分建议 | ⚠️ | 无官方 ML 划分,须自行时间序列切分 |
| 16 | 泄漏讨论 | ⚠️ | immortal time/用未来理赔等须规避(§5.3) |
| 17 | 标签分布 | ⚠️ | 分布随裁剪变动,无固定统计 |
| 18 | 测量偏倚 | ⚠️ | 编码 PPV/敏感度病种依赖 |
| 19 | 外部验证建议 | ✅ | 跨 HWDC 库/国际库外部验证 |
| 20 | 版本记录 | ✅ | 编码换版/实验室开放等里程碑可追溯 |
| 21 | 预处理脚本 | ⚠️ | 无官方预处理脚本,需在 mock 上自行冻结 |
| 22 | 合规要求 | ✅ | IRB + 审批 + 机房 + <3 抑制,管控严格 |
| 23 | 多模态对齐 | ✅ | 理赔 + 实验室(2017)/影像/登记可串联 |
| 24 | 去标识化 | ✅ | 假名加密 + 独立第三方核验 |
DAIMS 评分:14.5 / 24
评分解读:NHIRD 在合规、去标识化、跨库多模态串联、时间戳与版本可追溯上表现优秀(多项 ✅),是全人口真实世界证据的标杆数据源;但作为面向通用 ML/AI 直接消费的数据集,其无预置标签、无统一公开 codebook、无官方预处理/ML 划分、依赖报销编码、缺深层临床变量等使其在数据字典、标签、偏倚与工程就绪度上大量停留在 ⚠️(须研究者自行补齐)。
对你意味着什么:把 NHIRD 当"原始而合规的真实世界证据源"而非"开箱即用的 ML 数据集"。开始任何项目前,你必须:① 对目标病种先做一次编码效度文献检索(必要时自行验证);② 在 mock 数据(100,000 受试者)上冻结可复现 pipeline;③ 明确时间序列切分并规避 2016 换版断点;④ 将缺实验室/生活方式的局限写入方法学并考虑跨库串联补全硬结局。做得好,它的全人群覆盖与 70+ 库串联生态能支撑别的数据集难以企及的全国性纵向证据。
§7.8 外部验证矩阵
| 外部数据集/场景 | 来源机构 | 评估任务 | 性能指标 | 相对内部变化 | 关键发现 |
|---|---|---|---|---|---|
| Taiwan Cancer Registry 串联 | 中国台湾癌症登记 | 肿瘤结局确认 | — | 补全分期硬结局 | 理赔 + AJCC 分期交叉确认肿瘤疗效 |
| 死因登记串联 | 死因登记 | 死亡结局 | — | 补全生存 | 理赔库无全面死亡标志须跨库补全 |
| 国际多库比较(AsPEN) | 韩国 NHIS/瑞典登记 | 跨国药物结局 | HR 一致性 | 依人群/体制变化 | NHIRD 为亚洲核心数据源 |
| ICD-10 图表审查验证 | 本地医院 | 卒中/青光眼诊断效度 | PPV≈92.7%/92.2% | — | 与 ICD-9 时代可比 |
| 精神疾病图表验证 | NTUH 系医院 | 精神/情感障碍诊断效度 | PPV/敏感度 ≥0.70 | ICD-10 优于 ICD-9 | 首次系统验证精神诊断 |
关键观察与读者应注意事项:
- “验证 ≠ 全国大样本”:多数编码效度研究在少数医院(如 Chang Gung、NTUH 系)以图表审查为金标准,PPV 高但非全国随机抽样的全人群估计;将某院 PPV 直接推广到全国理赔仍可能偏差。
- 跨库串联是"有效性放大器":把理赔定义与癌症登记(分期)、死因(死亡)、重大伤病卡(重症)交叉后,硬结局的可信度显著高于纯理赔编码——NHIRD 的最大优势之一正在于这种串联生态(HWDC 内 70+ 库、单中心 ≥65 库)。
- 国际比较看"协议"而非"绝对值":不同国家行政库的编码、药码、就医路径差异大,AsPEN 式跨国研究靠统一研究协议 + 分布式/通用数据模型保证可比性,直接横向拼 HR 会误导。
- 效应量以原论文为准:本矩阵只录有同行评审支撑的定性方向;具体 HR/AUC 依研究目标差异大,引用时必须回溯原始论文并与所用子集/时代/结局定义核对。
§8 基准性能与生态
§8.1 排行榜
NHIRD 无公共 ML 排行榜——数据不可公开下载、机房内分析、无统一评测集,模型指标分散在各研究论文且不可直接比较。故不伪造排行榜;此处列出若干高引用/代表性模型化任务(定性,非排名):
| 任务类型 | 代表性研究/框架 | 说明 |
|---|---|---|
| 缺血性卒中风险 DSS | 智能决策支持系统(早期 ML) | 用理赔轨迹做卒中风险分层 |
| 深度学习方法 | AI 提取左心室射血分数 + 心衰 PAC 匹配 | 影像 + 理赔多模态(近年) |
| 胰腺癌 AI 检测 | 深度学习 CAD(对比增强 CT + 全国对照组) | 小肿瘤(<2cm)也高敏特异 |
| 精神/情感结局预测 | 表型 + 机器学习 | 见 2025 验证文献生态 |
⚠️ 数值不可直接比较:各研究所用子集、时代窗口、结局定义与验证标准不同,跨论文 AUC/HR 不可横向拼接。
§8.2 SOTA 总结与选型
理赔数据的 SOTA 不是单一模型,而是把因果设计 + 编码验证 + 跨库结局补全组合起来的方法学水位:new-user + active comparator + propensity/IPW + landmark/SCCS + 硬结局(死因/癌症/登记) + 分时代报告。选型上,静态表型用 GBDT,序列用时序编码器,效应估计用时间相依 Cox/MSM,罕见事件用 SCCS。真正提升结果可信度的是数据层治理(编码效度、跨库补全)而非单一模型参数。
为什么 NHIRD 上不宜照搬通用"刷榜"工作流:
| 通用 ML 惯例 | NHIRD 上的现实 | 适配建议 |
|---|---|---|
| 直接下载开箱数据 | 数据仅在 HWDC 机房内 | 用 mock(100,000 受试者)预研,机内正式建模 |
| 随机 8:2 切分 | 打破时序 + 混入 2016 断点 | 时间序列切分、逐时代报告 |
| 用现成标签 | 无预置标签,须自行定义并验证 | 病种效度验证后再用 |
| 单一模型刷 AUC | 观测性理赔混杂主导真实性 | 报告 AUC + E-value + 阴性对照 |
| 复现第三方结果 | 子集/时代/定义差异致不可比 | 各库可复现协议 + CDM(OMOP/Sentinel) |
| 上传数据到云/GPU | 严禁带出 | 机内聚合、分布式联邦/CDM 路线 |
选型决策速查:预测/分诊任务选 GBDT 或时序编码器(可解释优先 GBDT);因果与药物警戒选 new-user+active comparator + 时间相依 Cox/MSM;罕见事件选 SCCS;健康经济用成本+生存联合建模;表型探索用无监督聚类(后须验证)。无论选型,均以病种效度验证与硬结局串联作为结论可信度的地基。
§8.3 评测协议
- 用时间序列感知切分(训练年度 < 测试年度),避免 2016 编码断点混入。
- 结局优先用跨库硬结局(死因、癌症、重大伤病)或验证过的编码。
- 报告 AUC-ROC、平均精确率、C-index、Brier 与 1-/5- 年绝对风险。
- 因果任务报告 HR + 95%CI + E-value;附阴性对照。
- 分性别/年龄/城乡报告公平性指标。
§8.4 相关数据集
| 数据集 | 来源 | 模态 | 与 NHIRD 关系 |
|---|---|---|---|
| 韩国 NHIS 理赔库 | 韩国国民健康保险 | 全人群理赔 | AsPEN 国际多库对照 |
| 瑞典全国登记 | 瑞典 | 全人群登记 + 理赔 | 全球参照级登记 |
| 中国台湾 NHI 实验室库 | NHIA(2015 起) | 检验结果 | 与 NHIRD 理赔串联补化验 |
| MIMIC-III/IV | BIDMC(美) | ICU EHR | 高粒度对照,NHIRD 无自由文本 |
| CMS Medicare | 美 | 理赔 + 处方 | 美版理赔对照 |
| 中国台湾癌症登记 TCR | 中国台湾卫生福利 | 肿瘤登记 | 与 NHIRD 串联获取分期 |
§8.5 关键论文 Top
| # | 论文 | 贡献 |
|---|---|---|
| 1 | Lin LY, Warren-Gash C, Smeeth L, Chen PC. Data resource profile: NHIRD. Epidemiol Health 2018;40:e2018062. DOI 10.4178/epih.e2018062 | 最常引用的 NHIRD 数据资源画像,定义三形态释放与访问流程(引 420+) |
| 2 | Hsing AW, Ioannidis JPA. Nationwide Population Science: Lessons From the Taiwan NHIRD. JAMA Intern Med 2015;175(9):1527-9. DOI 10.1001/jamainternmed.2015.3540 | 全国性数据库比较与科学价值论述 |
| 3 | Hsieh CY, Su CC, Shao SC, et al. Taiwan’s NHIRD: past and future. Clin Epidemiol 2019;11:349-58. DOI 10.2147/CLEP.S196293 | 系统梳理历史、HWDC 现场分析制度与局限 |
| 4 | Hsieh CY, Shao SC, Sung SF, et al. Taiwan’s NHIRD: in the Era of AI, Causal Inference, and Data Security. Clin Epidemiol 2025;17:967-81. DOI 10.2147/CLEP.S553894 | 更新至 AI/因果/实验室影像时代,含 ICD-10 验证汇总 |
| 5 | (示例代表性成果) 2019 Diabetes Atlas (Hsu CC et al., J Formos Med Assoc) | 用 NHIRD 全档案做糖尿病全国流行病学 |
§8.6 社区活跃度
- 产出密度:2014 起每年 ≥300 篇 NHIRD 研究;累计 >2,700 篇同行评审论文(2018 口径)。
- 协作网络:AsPEN(亚洲药物流行病学网络)核心数据源;国际多库研究(韩国、瑞典)常态化。
- 学术集群:成大(Edward C.C. Lai 团队)、台大公卫、中国医药大学等为主要研究机构。
- 开源/无 GitHub:因数据不可下载,社区以方法论文与验证文献为主,少见可运行开源仓库。
§8.7 生态快照表
| 资源 | 类型 | 链接/说明 | 推荐理由 |
|---|---|---|---|
| HWDC 申请入口 | 官方 | dep.mohw.gov.tw/DOS/cp-5119-59201-113.html | 审批/审查清册权威入口 |
| HWDC 档案清单 | 官方 | dep.mohw.gov.tw/DOS/lp-2503-113-xCat-DOS_dc004.html | 字段/档案基准 |
| Data resource profile | 论文 | DOI 10.4178/epih.e2018062 | 数据画像最权威综述 |
| CLEP AI 时代综述 | 论文 | DOI 10.2147/CLEP.S553894 | 最新 AI/数据安全全景 |
| 实验室库综述 | 论文 | DOI 10.2147/CLEP.S286572 (Lee et al. 2021) | 2017 起实验室数据引入说明 |
§9 资源与引用
§9.1 官方资源
| 类型 | 名称 | 链接 |
|---|---|---|
| 申请入口 | 卫生福利资料科学中心 | https://dep.mohw.gov.tw/DOS/cp-5119-59201-113.html |
| 档案清单 | HWDC 数据库/档案列表 | https://dep.mohw.gov.tw/DOS/lp-2503-113-xCat-DOS_dc004.html |
| 卫生福利资料中心 | HWDC 简介 | https://hdsr.nycu.edu.tw/index.php/hwdc/ |
§9.2 BibTeX 引用
@article{lin2018data,
title = {Data resource profile: the National Health Insurance Research Database (NHIRD)},
author = {Lin, Liang-Yu and Warren-Gash, Charlotte and Smeeth, Liam and Chen, Pau-Chung},
journal = {Epidemiology and Health},
volume = {40},
pages = {e2018062},
year = {2018},
doi = {10.4178/epih.e2018062}
}
@article{hsing2015nationwide,
title = {Nationwide Population Science: Lessons From the Taiwan National Health Insurance Research Database},
author = {Hsing, Ann W and Ioannidis, John PA},
journal = {JAMA Internal Medicine},
volume = {175},
number = {9},
pages = {1527--1529},
year = {2015},
doi = {10.1001/jamainternmed.2015.3540}
}
@article{hsieh2019pastfuture,
title = {Taiwan's National Health Insurance Research Database: past and future},
author = {Hsieh, Cheng-Yang and Su, Chien-Chou and Shao, Shih-Chieh and others},
journal = {Clinical Epidemiology},
volume = {11},
pages = {349--358},
year = {2019},
doi = {10.2147/CLEP.S196293}
}
@article{hsieh2025ai,
title = {Taiwan's National Health Insurance Research Database (NHIRD): in the Era of Artificial Intelligence, Causal Inference, and Data Security},
author = {Hsieh, Cheng-Yang and Shao, Shih-Chieh and Sung, Sheng-Feng and others},
journal = {Clinical Epidemiology},
volume = {17},
pages = {967--981},
year = {2025},
doi = {10.2147/CLEP.S553894}
}
§9.3 引用指南
- 首引请引用 Lin et al. 2018(Data resource profile) 作为数据库资源画像基准。
- 若讨论访问/隐私/HWDC 治理,补充引用 Hsieh et al. 2019;若讨论 AI/实验室影像/ICD-10 验证,引用 Hsieh et al. 2025。
- 报告具体病种编码效度时,引用该病种对应的验证论文而非仅综述。
- 数据可用性声明中注明"经由 HWDC 申请获取,作者无特殊权限"。
§9.4 关键术语速查
| 术语 | 中文 | 含义 |
|---|---|---|
| NHI | 全民健康保险 | 1995-03-01 启动的单一付款人强制医保系统 |
| NHIA | 全民健康保险署 | 承接 BNHI,管理健保行政与理赔申报 |
| NHRI | 国家卫生研究院 | 1997-2016 负责建立与维护 NHIRD |
| NHIRD | 全民健康保险研究数据库 | 基于 NHI 理赔整理的研究数据库 |
| MOHW | 卫生福利部 | 现行数据治理与统筹机构 |
| HWDC / Data Science Centre | 卫生福利资料科学中心 | MOHW 统计处下属,集中管理与机房分析 |
| LHID | 纵向健康保险数据库 | 每年随机抽取约 100 万参保人的代表性子集 |
| PIN | 个人识别编号 | 加密后用于库内/跨库串联的患者标识 |
| ICD-9-CM / ICD-10-CM | 诊断分类 | 2016 前 / 2016 起的诊断编码体系 |
| NHI Drug Code | 健保药品码 | 非层级的用药编码,研究常映射至 ATC |
| ATC | 解剖治疗化学分类 | WHO 用药分类,用于药品归组 |
| IRB | 机构伦理审查委员会 | 研究前须取得其批准 |
| PPV / 敏感度 | 阳性预测值 / 灵敏度 | 评估理赔编码识别真实病例的指标 |
| PDC | 用药日占比 | 由续方处方度量用药依从性 |
| AsPEN | 亚洲药物流行病学网络 | NHIRD 参与的跨国药物安全协作 |
| CDM / OMOP | 通用数据模型 | 跨库统一模式,支持分布式/联邦研究 |
| immortal time | 不朽时间 | 暴露分类前必须存活导致的时变偏倚 |
§10 AI 使用声明卡
§10.1 AI 模型列表
| 用途 | 使用工具/模型 | 说明 |
|---|---|---|
| 内容起草 | 大语言模型(编辑辅助) | 依据 FACTS.md 事实清单起草文本 |
| 事实核验 | WebSearch 检索 | 核验规模/机构/验证数字 |
| 结构校对 | 本地脚本 check_md.py | 行数/坑点/DAIMS/纯净度校验 |
| 医疗专业审阅 | 千方病案医学编辑部 | §2/§7 医学与偏倚审查 |
§10.2 AI 参与范围
AI 辅助生成本文草稿与代码示例,所有数据规模、机构、时间与编码数字均由人工依据检索来源(FACTS.md)核对;AI 不独立作出医疗判断,不编造来源。
§10.3 输入来源列表
- Hsing AW, Ioannidis JPA. JAMA Intern Med 2015 — https://jamanetwork.com/article.aspx?doi=10.1001/jamainternmed.2015.3540
- Lin LY et al. Epidemiol Health 2018 — https://www.e-epih.org/journal/view.php?number=1015
- Hsieh CY et al. Clin Epidemiol 2019 — https://www.dovepress.com/articles.php?article_id=45563
- Hsieh CY et al. Clin Epidemiol 2025 — https://staging.europepmc.org/backend/articlerender.fcgi?accid=PMC12664420
- HMA-EMA NHIRD catalogue — https://catalogues.ema.europa.eu/data-source/1000000784
- Epi Health data access details — https://core.ac.uk/download/pdf/169432402.pdf
- COPD ICD-9-CM validity — https://www.dovepress.com/validity-of-icd9-cm-codes-to-diagnose-chronic-obstructive-pulmonary-di-peer-reviewed-fulltext-article-COPD
- Psychotic/affective ICD validity 2025 — https://pmc.ncbi.nlm.nih.gov/articles/PMC12258254/
- 2019 Diabetes Atlas — https://www.sciencedirect.com/science/article/pii/S0929664619304413
- LHID2000 revascularization — https://dx.plos.org/10.1371/journal.pone.0215811
- 台湾卫生福利资料科学中心简介 — https://hdsr.nycu.edu.tw/index.php/hwdc/
- HWDC MOHW 申请入口 — https://dep.mohw.gov.tw/DOS/cp-5119-59201-113.html
- Biases in EHR data overview — https://pmc.ncbi.nlm.nih.gov/articles/PMC10805748/
§10.4 人工校验表
| 内容模块 | 审核者 | 审核方式 | 审核状态 |
|---|---|---|---|
| §1 概览与规模数字 | 千方病案医学编辑部 | 对照检索来源 | ✅ 已通过 |
| §2 医学背景/ICD 映射 | 千方病案医学编辑部 | 医学专业审阅 | ✅ 已通过 |
| §3-4 数据规格与结构 | 医疗 AI 数据工程师 | 交叉核验 | ✅ 已验证 |
| §6 坑点与预处理代码 | 医疗 AI 数据工程师 | 工程审阅 | ✅ 已验证 |
| §7-8 质量/偏倚/基准 | 千方病案医学编辑部 | 方法学审阅 | ✅ 已验证 |
| 涉台规范表述 | 编辑部合规 | 全文审阅 | ✅ 已验证 |
§10.5 AI 生成章节标注
正文各章节由 AI 辅助起草并经人工审校;本文以事实清单(FACTS.md)为唯一事实底座,未编造数字。
§10.6 最后人工审核日期
2026-09-05(与 §0 审核日期一致)
页面状态:published(全部内容已完成审核并发布)
