PCORnet 临床研究网络

National Patient-Centered Clinical Research Network —— 覆盖全美 78 家健康系统的分布式 EHR 研究网络与通用数据模型(CDM v7.0)

来源 PCORI / PCORnet Coordinating Center发布时间: 2026-09-15最后更新: 2026-09-25 阅读 39
PCORnet 临床研究网络

信息速览

数据集名称PCORnet 临床研究网络
数据类型EHR,分布式数据网络,通用数据模型,联邦式查询,临床研究,患者报告结局
规模约 4,700 万名患者(年度活跃,2023 年官方口径)
接入方式PCORI / PCORnet Coordinating Center
AI 就绪度

数据集封面

PCORnet 临床研究网络

一句话定位:PCORnet 是把全美 78 家健康系统的电子健康记录"原地不动"地组织成一个可查询研究资产的国家级网络——数据不出防火墙,问题进去,聚合答案出来。

INFOBOX

字段 内容
中文名 PCORnet 临床研究网络
英文名 PCORnet(National Patient-Centered Clinical Research Network)
核心数据模型 PCORnet Common Data Model(CDM),当前版本 v7.0(2025-01-23 发布)
数据模态 多站点电子健康记录(EHR)分布式数据网络,结构化表格数据
网络架构 分布式研究网络(DRN):数据不集中,查询集中分发
患者规模 约 4,700 万名患者至少一次就诊(2023 年官方口径)
累计规模 近 10 年内有活动记录的累计患者超过 1 亿名
网络数量 8 个临床研究网络(CRN)
机构覆盖 78 家健康系统、超过 13,000 家医院及其他诊疗场所
资助与治理 PCORI(Patient-Centered Outcomes Research Institute)
累计资助额 超过 4.6 亿美元
协调中心 PCORnet Coordinating Center
核心数据表数量 25 张核心表 + 3 张补充(Supplemental)表
数据访问入口 PCORnet Front Door
查询平台 PopMedNet(开源分布式查询平台)
可行性查询周期 通常 6-8 周(Data Network Request)
主要术语标准 ICD-9/ICD-10、SNOMED CT、CPT/HCPCS、LOINC、RxNorm、UCUM
信息性缺失编码 ‘NI’(No Information)、‘UN’(Unknown)、‘OT’(Other)
数据质量控制框架 DAIMS(Data Access and Information Management System)24 项检查
规范许可 CC BY 4.0(CDM 规范文档)
数据是否免费 咨询与可行性评估免费;数据查询为付费服务
合规框架 HIPAA、最小必要信息原则、DUA、SMART IRB / IREx
经典代表研究 ADAPTABLE 阿司匹林剂量试验、PREVENTABLE 他汀类研究
URL https://www.qianfanghub.com/ai-ready-dataset/pcornet/430

§0 作者与可信度声明(E-E-A-T)

作者身份:本文由 qianfanghub.com 医疗数据集百科组撰写与维护。该团队长期从事临床数据集的字段级拆解、跨数据集互操作对照与 AI-Ready 结构化改写工作,累计处理过重症监护、影像、病理、基因组与多站点 EHR 五类模态的数据集档案。

经验(Experience):本文对 PCORnet 的拆解不是对官网文案的转述。团队基于对 CDM v7.0 规范全文、CDM v4.0/v6.0/v6.1 版本变更说明、Data Quality Validation 文档以及多篇使用 PCORnet 的同行评审论文的交叉核对,重建了"一个研究者从提出问题到拿到可发布结果"的完整链路,并把链路上每一处会真实绊倒人的地方单独成节(见 §7 坑点)。本文中的每一个规模数字、版本号与表名,都能在 §9 的官方来源中定位。

专业性(Expertise):PCORnet 与其他 EHR 数据集最根本的差异是它不是一个可以下载的数据集,而是一个可以查询的网络。因此本文的组织方式与传统数据集词条不同:我们把"表结构"与"表结构背后的分布式查询语义"放在同等权重上解读,并专门交代了各站点 ETL 差异为什么会让同一个查询在不同网络返回不可比的结果。

权威性(Authoritativeness):所有事实性陈述均以 PCORI 与 PCORnet 官方站点、PCORnet CDM 规范文档、GitHub 上的 CDM 勘误与指导 issue tracker、以及 PubMed Central 上的同行评审论文为准。凡检索未能证实者一律不写。本文明确记录了与常见二手资料不一致之处(尤其是患者规模口径),并给出取舍理由,见 §1 与 §9。

可追溯性(Trustworthiness):本文不提供任何患者级数据、不提供绕过数据使用协议(DUA)的方法、不给出任何可反推个体的查询构造。所有数据获取路径均指向官方 Front Door 流程。文中标注为 https://www.qianfanghub.com/ai-ready-dataset/pcornet/430 的链接为本站词条统一占位符,实际跳转由站点根域名解析。

局限声明:PCORnet 的公开文档粒度在网络级与模型级,站点级实现细节属于各 CRN 的内部工程知识,不在公开范围内。因此本文对"某站点具体如何 ETL"不作断言,只描述已被官方文档确认的通用模式。此外,PCORnet 的网络构成与规模持续演进,本文数字以写作时点(2026 年 9 月)公开信息为准。

利益冲突声明:本文作者与 PCORI、PCORnet Coordinating Center 及任何 CRN 均无雇佣、资助或商业合作关系。本文不含任何形式的数据访问代办推荐。


§1 数据集概览

1.1 一句话定义

PCORnet 临床研究网络(National Patient-Centered Clinical Research Network)是由 PCORI 资助建设的美国国家级临床研究基础设施。它把分布在 78 家健康系统中的电子健康记录(EHR)按一套统一的通用数据模型(PCORnet CDM)就地规范化,再通过分布式查询平台把研究问题分发到各站点执行,最后只回收站点级聚合结果。

关键词是**“就地”**。PCORnet 从设计之初就不打算把患者数据集中到一个中央仓库。这个选择决定了它的全部技术形态:CDM 的存在意义是让各地的数据"长得一样",PopMedNet 的存在意义是让问题"跑得动",而 Front Door 的存在意义是让访问"管得住"。

1.2 它解决什么问题

在 PCORnet 出现之前,想做一项覆盖数百万人、横跨多个医疗系统的观察性研究,通常只有两条路:

  • 路一:建中央仓库。 把各系统的数据抽取、脱敏、传输、汇聚到一个中心。代价是极高的合规成本、漫长的数据使用协议谈判、以及"数据一旦离开原机构就失去控制"的治理焦虑。
  • 路二:单站点研究。 只在一家医院或一个系统内做。代价是样本量小、人群单一、外部效度低,而且结论很难推广。

PCORnet 走的是第三条路:联邦式(federated)研究。数据留在原处,各站点按同一套模型把数据整理好,研究者的查询以程序形式分发过去,各站点在本地执行后只回传汇总数字。这样既保住了样本量与人群多样性,又避免了集中存储带来的治理负担。

1.3 与其他数据集的本质差异

维度 PCORnet 传统可下载 EHR 数据集 理赔数据库
数据位置 留在各站点防火墙内 集中交付给研究者 集中在数据厂商
获取方式 提交查询请求,拿聚合结果 下载完整行级数据 购买或申请完整数据
数据粒度 研究者提出前通常只见站点级聚合 个体级 个体级(账单粒度)
模型一致性 强制 CDM 规范化 取决于发布者 取决于厂商
临床细节 生命体征、检验值、患者报告结局齐全 视数据集而定 弱,缺临床测量值
就诊外事件 有缺口(只记录到系统内就诊) 视数据集而定 相对完整(含跨机构理赔)
典型用途 务实临床试验、可行性评估、人群队列 算法开发、模型训练 费用与利用率研究

这张表也解释了 PCORnet 常被误用的地方:它不适合作为机器学习模型的训练数据源,因为研究者通常拿不到行级数据。它的强项是回答人群层面的问题,以及为务实临床试验(pragmatic trial)筛选与招募人群。

1.4 规模数字的口径说明(重要)

网络上流传多种 PCORnet 规模数字,差异来自统计口径而非互相矛盾。写作本文时经检索核实,常见口径有三个:

  • 约 4,700 万名患者:每年至少有一次就诊记录的患者数。这是 PCORnet 官方主页当前采用的口径,也是本文 INFOBOX 采用的口径。
  • 累计超过 1 亿名患者:近 10 年内有活动记录的累计患者数。这是 PCORnet 十年回顾论文采用的口径。
  • CRN 累计约 8,000 万名患者:2009-2018 年间至少一次就诊的累计患者数,来自 PCORnet 2020 年论文。

关于"9,000 万+ 患者"这一说法:该数字在公开来源中未获证实,本文不予采用。经核对,接近的数字是 2009-2018 年 CRN 累计约 8,000 万(非 9,000 万),以及近 10 年累计超过 1 亿。若需引用规模,建议明确写出年份与口径(“每年至少一次就诊"还是"累计有记录”),否则跨文献比较会失真。

1.5 网络构成(同一处常见错误的澄清)

另一个高频错误是把 PCORnet 描述为"18 个临床数据研究网络"。实际情况是:

  • 2013 年 12 月,PCORI 董事会批准首轮资助,构成为 11 个 CDRN(临床数据研究网络)+ 18 个 PPRN(患者驱动研究网络)。"18"这个数字对应的是 PPRN,不是 CDRN。
  • 2017 年前后的文献记录为 13 个 CDRN + 20 个 PPRN,说明网络构成在早期是动态调整的。
  • **当前(2025 年)**活跃的是 8 个临床研究网络(CRN):ADVANCE、GPC、INSIGHT、OneFlorida+、PaTH、PEDSnet、REACHnet、STAR。

因此正确的表述是"早期由 11 个 CDRN 与 18 个 PPRN 起步,现整合为 8 个 CRN"。本文全文采用后者。

1.6 一句话总结适用性

适合:需要跨多家医疗系统、数百万级人群、且必须保留临床测量细节(检验值、生命体征、患者报告结局)的人群研究、务实临床试验与可行性评估。

不适合:需要个体级原始数据做模型训练、需要完整就诊外事件(跨机构理赔)、或需要影像/波形/自由文本等非结构化模态的研究。

§2 医学与科研背景

2.1 为什么需要"患者中心"的临床研究网络

PCORI 成立于 2010 年,其设立动因是美国医疗体系长期存在的一个结构性缺陷:临床决策所需的证据,与临床研究实际产出的证据之间,存在系统性错位。

传统的随机对照试验(RCT)有严格的入选排除标准,通常在 academic medical center 开展,参与者往往是更年轻、更健康、合并症更少的白人群体。而当同样的干预措施拿到真实临床场景中用在老年、多病共存、多重用药、社会经济条件复杂的患者身上时,疗效与安全性可能显著不同。与此同时,大量临床上天天在做、却从未被严格评价过的决策——比如"阿司匹林到底该吃 81mg 还是 325mg"——既没有 RCT 证据,也不容易设计 RCT。

PCORnet 要解决的就是这个错位:用真实世界的 EHR 数据,回答患者和临床医生真正关心的问题。

2.2 "患者中心"具体体现在哪里

“Patient-Centered” 不是一个修饰词,它在 PCORnet 的组织结构里有三个具体落点:

  • PPRN(患者驱动研究网络):由患者组织或患者社群自己主导的研究网络。患者不只是被研究对象,而是提出研究问题、参与方案设计、参与结果解读的主体。这是 PCORnet 与其他 EHR 网络最显著的结构差异。
  • 患者报告结局(PRO)被写进数据模型:CDM 中有独立的 PRO_CM 表专门承载患者自报的问卷与量表结果。这意味着"患者自己感觉怎么样"和"检验单上的数字"在数据模型里是并列的一等公民。
  • 研究问题的筛选机制:PCORI 的资助流程要求研究提案说明患者与利益相关方的参与方式,而不是只做科学价值评审。

2.3 务实临床试验:PCORnet 最核心的科研形态

PCORnet 最重要的科研贡献形态是务实临床试验(pragmatic clinical trial)——在实际临床环境中、纳入更广泛人群、评价真实世界效果,而非在严格控制条件下评价效力。

PCORnet 上两个标志性研究说明了这个形态:

ADAPTABLE(阿司匹林剂量):回答一个被争论了几十年的问题——冠心病患者应该吃低剂量(81mg)还是高剂量(325mg)阿司匹林?该研究依托 PCORnet 网络大规模筛选符合条件的人群、以患者中心的方式招募、并通过 EHR 与患者自报双通道采集结局。它的关键价值在于:这个问题的答案不可能靠传统 RCT 高效获得,因为两种剂量都已广泛使用且都属标准治疗。

PREVENTABLE(他汀类):以约 9,000 万美元规模成为 PCORnet 上规模最大的研究,面向老年人群评估他汀类药物在预防痴呆与失能方面的作用。这项研究之所以必须在网络层面做,是因为它需要大量平时被 RCT 排除的高龄、多病共存人群。

这两项研究的共同点是:问题本身足够重要,但用传统方法做不动,只有网络级基础设施才能支撑。

2.4 分布式数据网络架构的医学含义

PCORnet 的分布式架构(DRN)不只是技术选择,它改变了研究的伦理与治理形态:

  • 患者数据的物理控制权留在原机构。患者所在医院的伦理委员会与隐私官,对"谁在问什么"保有知情与把关的能力。
  • 单一 IRB 审查。多站点研究通常需要在每个参与机构分别通过伦理审查,反复修改方案会带来巨大的时间成本。PCORnet 生态依托 SMART IRB 与 IREx 等互认机制,让多站点研究走单一 IRB 审查路径,显著压缩启动时间。
  • 最小必要信息原则被工程化。因为研究者默认拿到的是聚合结果,而不是行级数据,"最小必要"从一个原则变成了默认状态——想拿到更多信息需要额外申请与论证,而不是默认拥有。

2.5 覆盖人群与代表性

PCORnet 覆盖的人群有几个对研究设计有实质影响的特征:

  • 规模足以支撑罕见亚组。数千万级人群中,即使发病率万分之一的疾病,也有可观的绝对例数。这使得某些难以在单中心积累的亚组研究变得可行。
  • 人群多样性优于传统 RCT。78 家健康系统横跨城市学术中心、社区医院、儿童医院、安全网医疗系统与健康计划,人群的种族、族裔、年龄、社会经济构成比传统 RCT 样本更接近真实人群。
  • 存在"系统内偏倚"。一个人如果从网络外的一家机构就诊,这次就诊不会被记录。对于跨系统流动频繁的人群(如无保险者、频繁搬迁者、跨州就医者),数据会存在系统性缺口。这是 PCORnet 基于 EHR 而非理赔数据的固有代价,也是使用者在设计队列时必须显式处理的问题。

2.6 CDM 为什么存在

78 家健康系统各自使用不同的 EHR 厂商与配置:Epic、Cerner、MEDITECH 等系统的内部表结构、编码字典、字段语义都不同。如果不做统一,任何跨站点查询都必须为每个站点单独写一套提取逻辑,这在工程上不可持续。

PCORnet CDM 的作用就是把这件事一次性标准化:

  • 定义一个所有站点都必须遵守的表结构与字段语义(“所有核心表必须存在,即使表为空”)。
  • 定义一个所有站点都必须使用的受控词表映射规则(诊断映射到 ICD,检验映射到 LOINC,药品映射到 RxNorm,单位映射到 UCUM)。
  • 定义一个所有站点都必须使用的信息性缺失编码体系(‘NI’ / ‘UN’ / ‘OT’)——这一点至关重要,因为它让"没这个信息"和"有这个信息但值为零"在数据里可区分。

CDM 的设计起点是 FDA Mini-Sentinel CDM v4.0,经 PCORnet 自身演进形成独立路线,当前版本为 v7.0。

2.7 数据质量控制体系的医学意义

PCORnet 建立了一套以 DAIMS(Data Access and Information Management System)为核心的 24 项数据质量检查框架,从四个维度评估站点数据:

  • 一致性(Conformance):数据是否符合 CDM 规定的结构、类型与受控词表要求。
  • 完整性(Completeness):应有数据的字段是否真的被填充,缺失是否被正确编码。
  • 合理性(Plausibility):数值是否落在临床可能的范围内(如体重 500 公斤即为不合理)。
  • 持久性(Persistence):同一患者的记录在时间维度上是否自洽(如出生日期与就诊年龄是否矛盾)。

这套框架的医学意义在于:它把"数据能不能用来回答临床问题"这个模糊判断,拆解成了可量化、可跨站点比较的检查项。 研究者拿到查询结果时,可以同时看到数据质量评分,从而判断某一结论受数据质量问题影响的程度。§7 将给出完整的 24 项逐项拆解。

2.8 在医学数据版图中的位置

维度 PCORnet 单中心 EHR 数据仓库 全国性理赔数据库 重症监护专用数据集
主要优势 多系统 + 临床细节 + 患者报告结局 深度临床细节、可控 跨机构完整就诊、费用 高时间分辨率、床旁参数
主要短板 无行级数据、就诊外事件缺口 样本量小、外部效度低 缺临床测量值、无患者报告结局 单中心、样本量小
典型研究形态 务实临床试验、可行性评估 机制研究、算法开发 卫生经济、利用率 生理机制、治疗强度

PCORnet 在这个版图中的位置可以概括为:在"样本量"与"临床细节"这两个通常互相排斥的维度上同时取得较好平衡,代价是研究者与原始数据之间隔了一层查询层。

§3 数据集规格

3.1 总体规格

规格项 内容
数据集名称 PCORnet Clinical Research Network
数据模型 PCORnet Common Data Model(CDM)
当前模型版本 v7.0(2025-01-23 发布,规范文档日期 2025-05-01)
模型前身 FDA Mini-Sentinel CDM v4.0
架构类型 分布式研究网络(Distributed Research Network, DRN)
数据留存位置 各参与站点的本地防火墙内
查询分发平台 PopMedNet(开源)
结果回收粒度 站点级聚合(site-level aggregate)
核心表数量 25 张
补充表数量 3 张
网络数量 8 个 CRN
机构覆盖 78 家健康系统、超过 13,000 家医院及其他诊疗场所
年度活跃患者 约 4,700 万
累计患者(近 10 年) 超过 1 亿
时间跨度 约 2009 年至今(滚动更新)
地理覆盖 美国
数据刷新机制 各站点按周期重新生成 CDM 实例并提交 HARVEST 表
许可(规范文档) CC BY 4.0
许可(数据) 不适用统一开放许可,需逐项通过 DUA 授权
访问入口 PCORnet Front Door
可行性查询周期 通常 6-8 周
资助与治理方 PCORI

3.2 版本演进时间线

PCORnet CDM 的版本演进是理解其数据结构的关键。每一次大版本升级都对应一类新的科研需求。

版本 发布日期 关键变化
V1.0 2014 年 首个版本,确立基础表结构
V2.0 2014 年 早期迭代
V3.0 2015 年 结构扩展
V3.1 2016 年 结构扩展
V4.0 2018-01-02 新增 PROVIDER、OBS_CLIN、OBS_GEN、MED_ADMIN 四表;新增 32 个字段;RESULT_UNIT 纳入 UCUM 常用单位;引入 PRIVATE / Supplemental 表概念
V6.0 2020-10-22 新增 LAB_HISTORY 表;新增 9 个字段;ENCOUNTER_TYPE 值集纳入 Telehealth;CONDITION_SOURCE 扩展纳入 Patient Chief Complaint;OBSGEN_TABLE_MODIFIED 扩展纳入 IMMUNIZATION 与 LDS_ADDRESS_HISTORY
V6.1 2023-04-03 结构完善与勘误整合
V7.0 2025-01-23 新增 EXTERNAL_MEDS、PAT_RELATIONSHIP 两表;DEMOGRAPHIC 新增 8 个 RACE_ETH_* 字段;LDS_ADDRESS_HISTORY 新增 4 个字段;PRO_CM 字段重命名与弃用

版本演进的四个信号:

  1. V4.0 的"提供者"转向。新增 PROVIDER 表意味着 PCORnet 开始系统性支持"按医生/科室分析"这类研究问题。OBS_CLIN 与 OBS_GEN 的引入则把"观察性数据"正式纳入模型——即那些不属于标准检验但具有临床意义的结构化观察项。
  2. V6.0 的"远程医疗"转向。Telehealth 进入 ENCOUNTER_TYPE 值集,直接反映新冠疫情期间诊疗形态的变化被固化进数据模型。这是数据模型响应真实世界变化的典型案例。
  3. V7.0 的"外部用药"转向。EXTERNAL_MEDS 表承认了一个长期存在的现实问题:患者在本网络之外购买的药品(非处方药、其他渠道处方药)会被系统漏记,而这对药物流行病学研究是重大威胁。单独建表是一种显式补偿。
  4. V7.0 的"社会决定因素"转向。DEMOGRAPHIC 新增 8 个 RACE_ETH_* 字段,说明种族与族裔的采集从单一字段走向更细粒度的多维采集,以支持健康公平研究。

3.3 CDM 的 25 张核心表

以下为 CDM v7.0 的核心表清单及其语义角色。所有核心表必须存在于每个站点的 CDM 实例中,即使该表为空——这是 CDM 的硬性设计约束,因为查询平台需要一个稳定的表集合来定位与执行查询。

序号 表名 语义角色 关键内容
1 DEMOGRAPHIC 患者主索引 出生日期、性别、种族、族裔、RACE_ETH_* 多维字段
2 ENROLLMENT 参保/纳入期间 患者在系统中的覆盖时间窗,是全部分析的时间基准
3 ENCOUNTER 就诊事件 就诊类型、日期、科室、DRG 等;含 Telehealth 值
4 DIAGNOSIS 诊断 ICD-9/ICD-10 编码、DX_TYPE、诊断来源
5 PROCEDURES 操作 CPT/HCPCS 编码、PX_TYPE、操作日期
6 VITAL 生命体征 身高、体重、血压、BMI 等结构化测量值
7 DISPENSING 药品调配 药房配药记录,RxNorm 编码、剂量、天数
8 LAB_RESULT_CM 检验结果(主表) 结果值、LOINC 编码、UCUM 单位、参考范围
9 CONDITION 患者自报/登记疾病 与 DIAGNOSIS 区分,来源为患者或登记系统
10 PRO_CM 患者报告结局 标准化问卷与量表结果
11 PRESCRIBING 处方 医生开具记录,与 DISPENSING 互补
12 PCORNET_TRIAL 试验参与 标记患者是否参与 PCORnet 支持的试验
13 DEATH 死亡 死亡日期与来源
14 DEATH_CAUSE 死因 ICD 编码的死因信息
15 MED_ADMIN 给药记录 实际给药事件(尤其住院场景)
16 PROVIDER 提供者 医生/科室等提供者维度信息
17 OBS_CLIN 临床观察(数值型) 非检验类的结构化临床观察,含单位与数值
18 OBS_GEN 通用观察(通用型) 更宽泛的观察项,含 OBSGEN_TABLE_MODIFIED 溯源
19 HASH_TOKEN 患者匹配令牌 跨站点去重与链接用的哈希令牌
20 LDS_ADDRESS_HISTORY 地址历史 患者历史地址,支持地理与社会决定因素分析
21 IMMUNIZATION 免疫接种 疫苗名称、日期、CVX 编码
22 HARVEST 站点数据刷新元数据 记录本次数据抽取的规模、时间与版本,用于数据质量评估
23 LAB_HISTORY 检验历史 V6.0 引入,承载更长时间跨度的检验历史
24 PAT_RELATIONSHIP 患者关系 V7.0 引入,支持家庭/照护关系分析
25 EXTERNAL_MEDS 外部用药 V7.0 引入,补偿网络外用药漏记

三张补充(Supplemental)表:补充表用于承载核心表无法容纳的、站点特定的或探索性的数据。它们不属于必选,但一旦使用须遵守模型约定。

3.4 字段级设计约定

CDM 在字段层面有几条对使用者影响极大的约定:

键字段为文本类型。PATID、ENCOUNTERID、PROVIDERID 等键字段被规定为 text 而非数字。原因是各站点的真实标识符形态各异(可能是数字、可能是字母数字混合、可能带前导零),强制为数字会导致前导零丢失与类型转换失败。对使用者的含义:如果你用数值运算处理这些键,会静默出错。

日期字段的处理。CDM 使用日期字段承载事件时间,但各站点出于隐私考虑可能对日期做位移或粗化处理。对使用者的含义:日级别的精确时间差(如住院天数)在某些站点可能不可靠。

信息性缺失编码。CDM 定义了三个关键的信息性缺失值:'NI'(No Information,即该信息在源系统中根本没有采集)、'UN'(Unknown,即采集了但患者不知道或不适用)、'OT'(Other,即信息系统中有值但无法映射到受控词表)。这三者与"空值"语义完全不同,混淆使用是最常见的分析事故来源,详见 §7 坑点 2。

受控词表映射的强制要求:

领域 目标词表 说明
诊断 ICD-9-CM / ICD-10-CM 两种编码体系共存,需按 DX_TYPE 区分
临床术语 SNOMED CT 用于 CONDITION 等表
操作 CPT / HCPCS 需按 PX_TYPE 区分
检验 LOINC 检验项目识别的核心
药品 RxNorm 处方与调配
单位 UCUM 检验与观察项单位

3.5 分布式查询规格(PopMedNet)

规格项 内容
平台性质 开源分布式查询平台
部署形态 各站点本地部署数据伙伴(DataMart)客户端
查询提交 研究者构造查询 → 中央节点分发
本地执行 各站点在本地数据上执行查询
结果回收 仅回传站点级聚合结果
个体级数据 不进入中央节点
网络能力 支持多个 DataMart 网络并存与跨网络查询

PopMedNet 的核心价值在于它把"隐私保护"从制度要求变成了架构属性:即使中央节点被攻破,也不存在一个包含全部患者记录的中央表可供窃取。

3.6 数据访问规格

环节 内容 周期/费用
咨询 与研究团队讨论研究问题可行性 免费
可行性评估 Data Network Request,返回站点级患者计数 通常 6-8 周
请求形式 提交表壳(table shell)定义所需字段与人群 ——
数据查询 在可行性与方案确认后执行 付费服务
合规文件 DUA(Data Sharing Agreement) ——
伦理审查 依托 SMART IRB / IREx 实现单一 IRB 审查 ——
隐私框架 HIPAA、最小必要信息原则 ——

关于费用的一个重要说明:PCORnet 的咨询与可行性评估环节是免费的,这让研究者可以在投入正式方案前低成本地判断研究问题是否值得推进。真正产生费用的是后续的数据查询与交付环节,具体金额依查询复杂度、涉及站点数与交付形式而变,不在公开价目表范围内,需经 Front Door 协商。

§4 数据结构详解

4.1 数据模型的组织逻辑

PCORnet CDM 的表不是随意堆放的清单,它们围绕一个患者在一次就诊中发生了什么这条主轴组织,再向外扩展到"这个患者长期的状态"和"这个患者在医疗系统之外的情况"。

理解这个组织逻辑,比记住 25 个表名重要得多。

4.2 患者维度:从主索引到关系网络

DEMOGRAPHIC 表是整个模型的锚点。每一行代表一个 PATID,承载该患者的静态人口学特征。这里有一个关键设计:PATID 不是全球唯一标识符,而是站点内的唯一标识符。也就是说,同一个真实患者如果在两家参与机构都就诊,在两个站点会各有一个 PATID。

这就引出 HASH_TOKEN 表的作用:它承载用于跨站点患者匹配的哈希令牌,使网络层面能够识别"这可能是同一个人",同时不暴露原始标识符。对使用者的含义:跨站点的患者去重是网络层的复杂工程,研究者不应假设自己拿到的计数天然不含重复。

PAT_RELATIONSHIP 表(V7.0 新增)把患者从"孤立的个体"扩展为"关系网络中的节点"。它能承载诸如亲子、配偶、照护者等关系。这类数据对遗传研究、家庭聚集性研究、照护负担研究有直接价值。

LDS_ADDRESS_HISTORY 表记录患者的历史地址。它的价值不仅是地理分析,更重要的是支持社会决定因素(SDOH)研究——把患者的居住地历史与社区层面的 deprivation index、环境暴露等外部数据关联,从而研究健康不公平的结构性成因。

4.3 时间维度:ENROLLMENT 为什么是分析的时间基准

这是 PCORnet 新手最容易忽略、但影响最大的一个设计。

ENROLLMENT 表记录患者"在系统覆盖范围内"的时间窗(ENROLLMENT_START_DATE 到 ENROLLMENT_END_DATE)。它的存在解决了一个根本性的分母问题:

如果一个患者在 2015 年之后不再出现在某站点,是因为他健康(不需要就诊),还是因为他搬走了(不再属于该系统的覆盖人群)?

这两种情况的临床含义完全不同,但如果没有 ENROLLMENT 表,数据里看起来都一样——都是"没有记录"。

因此,正确的做法是:任何率(rate)或患病率(prevalence)的计算,分母必须基于 ENROLLMENT 表定义的时间窗,而不是基于"有记录的患者数"。 忽略这一点会导致系统性偏倚,详见 §7 坑点 5。

4.4 事件维度:ENCOUNTER 作为中心枢纽

ENCOUNTER 表是模型的事件中枢。每一行代表一次就诊(ENCOUNTERID),并携带 ENCOUNTER_TYPE 标明就诊场景。

ENCOUNTER_TYPE 的值集在 V6.0 中扩展纳入了 Telehealth,这一变化的重要性超出表面:它意味着远程诊疗从"无法归类"变成了"一等公民"。对研究者的实际影响是,在 V6.0 之前,远程就诊可能被折叠进门诊类别,导致就诊强度被系统性高估;V6.0 之后可以显式区分。

ENCOUNTER 与下游表的关系:

  • DIAGNOSIS 通过 ENCOUNTERID 挂接到具体的某次就诊。
  • PROCEDURES 同理,通过 ENCOUNTERID 挂接。
  • VITAL 通过 ENCOUNTERID 挂接,所以生命体征是"某次就诊时测得的值"。
  • LAB_RESULT_CM 通过 ENCOUNTERID 挂接,但检验可能发生在就诊之外(如外送检验),此时关联可能为 NI 或 UN。
  • PRESCRIBING 与 DISPENSING 通过 ENCOUNTERID 与 PATID 双重关联。

关键含义:因为下游表通过 ENCOUNTERID 挂接,任何丢失或不规范的 ENCOUNTER 记录都会连带影响所有下游记录的可关联性。这是为什么 §7 坑点 1(TYPE 字段错误)的破坏力如此之大。

4.5 临床内容维度:四类表的分工

PCORnet CDM 对"临床上发生了什么"做了四类区分,这个区分本身包含重要的语义:

第一类:诊断(DIAGNOSIS)与操作(PROCEDURES)。这是基于编码的、为计费与统计目的产生的结构化记录。它们的优点是编码标准化程度高、覆盖广;缺点是编码行为受制度与激励影响(如"编码升级"现象),并不完全等同于临床真实。

第二类:检验(LAB_RESULT_CM)与生命体征(VITAL)。这是测量值,是 PCORnet 相对理赔数据的核心优势所在。检验值携带数值、单位、参考范围;生命体征携带身高、体重、血压等。它们让研究者能做真实的临床分层(如"HbA1c > 9% 的患者"),而不只是"被编码为糖尿病的患者"。

第三类:用药(PRESCRIBING / DISPENSING / MED_ADMIN / EXTERNAL_MEDS)。这四张表的关系值得单独说明:

表 语义 回答的问题
PRESCRIBING 医生开具 医生想让他吃什么药?
DISPENSING 药房配药 他实际取到了什么药?
MED_ADMIN 实际给药 他实际吃下去了什么药?(尤其住院)
EXTERNAL_MEDS 网络外用药 他在本系统之外还用了什么药?

为什么四者不能互相替代:PRESCRIBING 与 DISPENSING 之间的差距就是一级用药不依从性的度量;DISPENSING 与 MED_ADMIN 之间的差距反映住院场景中护士执行医嘱的实际情况;而 EXTERNAL_MEDS 的存在本身就是在承认前三者会系统性漏记。把四张表混为一谈,是药物流行病学研究中最常见的错误之一。

第四类:患者视角(PRO_CM / CONDITION)。这是 PCORnet"患者中心"定位在数据模型上的直接体现。PRO_CM 承载标准化问卷与量表(如 PROMIS 系列),CONDITION 承载患者自报或登记系统来源的疾病状态。它们与 DIAGNOSIS 的关键差异是来源不同:DIAGNOSIS 来自临床编码,CONDITION 来自患者或登记。同一个患者"有糖尿病"这件事,可能只出现在其中一张表里。

4.6 治理维度:HARVEST 表的作用

HARVEST 表在语义上与其他表都不同——它描述的不是患者,而是本次数据抽取这件事本身。

它记录该站点在本轮数据提交中的规模(患者数、记录数)、时间范围、CDM 版本等信息。它的价值在于:

  • 数据质量评估的输入。DAIMS 检查需要知道站点规模才能判断某个缺失率是否异常。
  • 跨站点可比性的基础。如果两个站点的 HARVEST 显示时间窗不同,那么它们的计数不可直接比较。
  • 版本漂移的可见性。如果某站点仍在使用旧版 CDM,HARVEST 会暴露这一点。

对使用者的含义:拿到任何查询结果时,第一件该做的事不是看数字,而是看 HARVEST 元数据,确认这个数字是在什么时间窗、什么版本、什么规模下产生的。

4.7 一个完整查询的数据流

把上述结构串起来,一个典型的 PCORnet 查询经历以下路径:

  1. 提出研究问题。例如"在 2019-2023 年间,新诊断 2 型糖尿病且 HbA1c > 9% 的成年患者有多少?"
  2. 转换为 CDM 查询逻辑。定位到 DEMOGRAPHIC(年龄、成年)、ENROLLMENT(时间窗内的覆盖)、DIAGNOSIS(ICD-10 糖尿病编码 + DX_TYPE 校验)、LAB_RESULT_CM(LOINC 对应 HbA1c + 数值 > 9 + 单位校验)。
  3. 构造表壳与查询包。明确所需字段、人群定义、时间边界、排除标准。
  4. 通过 Front Door 提交。经协调中心审核后进入 Distribution。
  5. 分发到各站点 DataMart。PopMedNet 把查询包发往各站点的本地部署。
  6. 各站点本地执行。各站点在自己的 CDM 实例上运行查询。这一步是各站点 ETL 差异产生影响的时刻。
  7. 回传站点级聚合结果。中央节点收到的是每个站点的计数,不是患者记录。
  8. 汇总与质量评估。研究者看到分站点计数与总计数,同时可查看数据质量指标。
  9. 结果解读与发表。研究者需要显式讨论跨站点异质性与数据质量限制。

理解这条链路的价值:这条链路上任何一环出问题,最终数字都会出错,而且往往以一种"看起来很正常"的方式出错。§7 的八个坑点,就是这条链路上最常出问题的八个位置。

4.8 表间关系的三个易错点

易错点一:一对多的假设错误。一个 ENCOUNTERID 可以对应多条 DIAGNOSIS 记录。如果研究者用一个 JOIN 后直接计数,会得到"诊断数"而不是"就诊数"。这在计算患病率时会系统性高估。

易错点二:日期字段的语义差异。ENCOUNTER 有就诊日期,DIAGNOSIS 有诊断日期,DISPENSING 有配药日期,LAB_RESULT_CM 有检验日期与结果日期。这几个日期在真实场景中可能相差数天甚至数周。用哪个日期做时间窗切分,会直接改变研究结论。

易错点三:缺失编码未被过滤。对 LAB_RESULT_CM 的数值字段直接做数值比较时,如果该字段包含 'NI' / 'UN' / 'OT' 这类文本值,比较逻辑会以不同方式失败:在严格类型系统中报错,在宽松系统中被静默排除或产生意外结果。必须先显式处理缺失编码,再做数值运算。

§5 数据划分与队列设计

5.1 PCORnet 没有传统意义上的"训练/验证/测试集划分"

这是使用 PCORnet 时最需要先建立的认知:PCORnet 不是一个用于机器学习的静态数据集,因此不存在官方规定的 train/val/test 划分。

它的"划分"逻辑体现在另外三个层面:

  1. 站点划分:数据天然按 8 个 CRN 及其下属站点分布。研究者拿到的是分站点结果。
  2. 人群划分:通过查询定义的人群纳入排除标准来界定队列。
  3. 时间划分:通过 ENROLLMENT 时间窗与事件时间窗界定观察期。

理解这三个层面,才能正确设计基于 PCORnet 的研究。

5.2 层面一:站点作为天然的划分单元

PCORnet 的分站点结构天然形成了一种外部验证机制:

做法:把查询结果按站点分组,观察效应量在不同站点间是否一致。

价值:如果一个发现在 8 个 CRN 中方向一致、量级相近,其可信度远高于单站点发现。如果某些站点显著偏离,那么这个异质性本身就是重要发现——它提示存在人群构成差异、诊疗模式差异或数据质量差异。

注意:站点间的异质性不能简单当作"噪声"剔除。在 PCORnet 的设计哲学里,站点差异往往反映真实的医疗实践差异,而这正是务实研究想要捕捉的东西。

常见误用:把某个站点当"训练集"、另一个当"测试集"。这在 PCORnet 上不成立,因为研究者通常无法获得站点级行级数据来"训练"任何东西。

5.3 层面二:队列定义的核心要素

任何基于 PCORnet 的队列研究都需要明确定义以下要素。这里的每一条都对应 CDM 中的具体表与字段。

要素一:观察窗(Observation Window)

必须基于 ENROLLMENT 表定义。需要明确:

  • 患者必须在该窗内连续覆盖多长时间才算合格?(常见要求是至少连续 6 或 12 个月)
  • 窗的起止日期是什么?
  • 是否允许中间有短暂的覆盖中断?

为什么关键:如果允许患者在未覆盖期间"消失",任何以"未发生事件"为基础的结局都会被错误计入。这是 §7 坑点 5 的主题。

要素二:索引事件(Index Event)

定义队列开始的那一刻。常见形式:

  • 首次诊断日期(来自 DIAGNOSIS)
  • 首次用药日期(来自 DISPENSING 或 PRESCRIBING)
  • 首次检验超过阈值日期(来自 LAB_RESULT_CM)
  • 首次就诊日期(来自 ENCOUNTER)

为什么关键:索引事件的定义方式直接决定纳入人群。用"首次诊断为糖尿病"和"首次 HbA1c > 6.5%"定义的队列,即使目标人群名义相同,实际构成也会显著不同。

要素三:基线洗脱期(Washout Period)

在索引事件之前需要一个观察期,以确保该事件确实是"新发"而非既往已存在。例如定义"新诊断糖尿病",通常要求索引事件前 12 个月内无糖尿病诊断记录。

为什么关键:洗脱期长度不足会混入 prevalent 病例,使"新发率"失真;洗脱期过长会排除真实新发病例,降低样本量与代表性。

要素四:纳入与排除标准

通常涉及:

  • 年龄(基于 DEMOGRAPHIC 的出生日期与索引日期推算)
  • 性别
  • 既往病史(基于 DIAGNOSIS)
  • 既往用药(基于 DISPENSING)
  • 检验值范围(基于 LAB_RESULT_CM,必须处理单位与缺失编码)

要素五:结局定义

  • 基于诊断的结局:需要明确 ICD 编码列表与 DX_TYPE 约束。
  • 基于检验的结局:需要明确 LOINC 编码、阈值、单位。
  • 基于用药的结局:需要明确选择 PRESCRIBING 还是 DISPENSING,两者语义不同。
  • 基于死亡的结局:需要结合 DEATH 与 DEATH_CAUSE,并注意死亡数据本身的完整性远低于临床数据。

要素六:随访窗(Follow-up Window)

从索引事件到结局、失访、死亡或研究结束,取最早者。需要显式定义"失访"在 PCORnet 语境下如何判断(通常是 ENROLLMENT 覆盖结束)。

5.4 层面三:时间划分的三种模式

模式 结构 适用场景 主要风险
回顾性队列 全部时间窗在过去 发病率、自然史、药物效果 回顾性记录偏倚、编码实践变迁
前瞻性队列 索引事件在近期,随访向前 结局采集、患者报告结局 随访周期长、失访
准实验 / 中断时间序列 以某个政策或事件为界 政策评估、指南变更影响 同期趋势混杂

时间维度上最容易被忽视的问题:ICD-9 到 ICD-10 的转换。美国在 2015 年 10 月完成转换,这意味着跨越该时点的研究必须在编码层面做兼容处理,否则会出现人为的"疾病发生率断裂"——看起来像疾病突然变多或变少,实际只是编码体系变了。见 §7 坑点 7。

5.5 病例对照与巢式设计在 PCORnet 上的特殊性

在分布式架构下,病例对照设计会遇到一个特殊困难:对照的选择需要在同一源人群中进行,而这个源人群的界定依赖 ENROLLMENT。

如果对照选择机制不明确要求 ENROLLMENT 覆盖,各站点可能会用不同逻辑选取对照(有的用"有就诊记录者",有的用"有覆盖记录者"),导致站点间可比性丧失。

实践建议:在查询定义中显式写明对照的抽样框(sampling frame)以及该抽样框如何从 ENROLLMENT 定义,不要依赖站点自行解释。

5.6 队列设计的检查清单

在提交任何 PCORnet 查询前,逐项确认:

  • [ ] 观察窗是否基于 ENROLLMENT 明确定义?
  • [ ] 是否要求了最小连续覆盖时长?
  • [ ] 索引事件的定义是否唯一且无歧义?
  • [ ] 洗脱期长度是否合理并已写明?
  • [ ] 所有基于编码的纳入/排除标准是否指定了 TYPE 字段?
  • [ ] 所有基于检验的标准是否指定了 LOINC、单位与缺失编码处理方式?
  • [ ] 结局定义是否区分了 PRESCRIBING 与 DISPENSING?
  • [ ] 随访终止规则是否明确?
  • [ ] 是否考虑了 ICD-9/ICD-10 转换的影响?
  • [ ] 分析计划中是否包含分站点异质性评估?
  • [ ] 是否已规划对数据质量指标的解读方式?

这份清单的每一条都对应后文一个坑点或质量维度,而不是泛泛而谈。

§6 AI 就绪与实用指南

6.1 为什么 PCORnet 对 AI 是"特殊难度"

大多数数据集的"AI 就绪"问题是如何把数据喂给模型。PCORnet 的问题完全不同:你通常拿不到可以喂给模型的数据。

这带来一个结构性结论:PCORnet 在 AI 工作流中的角色,主要不是训练数据源,而是三类其他角色。

6.2 PCORnet 在 AI 工作流中的四类角色

角色一:队列发现与可行性评估

在启动一项研究或构建一个模型之前,先要回答"有没有足够的人"。PCORnet 的 Data Network Request 正好服务于此:以较低成本(免费咨询 + 6-8 周可行性查询)获得站点级人群计数,用于判断研究是否值得推进。

AI 场景:在开发一个临床预测模型前,先用 PCORnet 确认目标人群规模与特征分布,避免投入资源后发现样本不足。

角色二:外部验证的靶场

一个在单中心数据上训练的模型,需要在多机构数据上验证泛化性。PCORnet 的分布式架构允许把模型的推理逻辑(而非数据)分发到各站点执行,回收聚合后的性能指标。

关键限制:这种模式下你只能得到聚合的性能数字(如各站点的 AUC),拿不到预测分数本身。因此无法做需要个体级预测值的分析(如校准曲线细节、决策曲线分析)。

角色三:务实临床试验的运营基础设施

务实试验的患者筛选、招募、随访都依托网络。AI 在这里的角色是辅助筛选(如从结构化数据中识别潜在合格者)与辅助监测。

角色四:真实世界证据的对照臂

单臂试验或观察性研究中,PCORnet 可作为外部对照来源。这类用法对数据质量与人群可比性的要求极高,需要非常谨慎的统计设计。

6.3 数据获取路径的实操流程

第一步:明确研究问题与所需字段

先写清楚要回答什么问题、需要哪些变量、这些变量在 CDM 中对应哪些表与字段。不要先看有什么数据再想问题——这会引入可及性偏倚。

第二步:查阅 CDM 规范确认字段语义

CDM v7.0 规范文档是权威依据。特别注意:

  • 字段是否在最新版本有重命名或弃用(V7.0 对 PRO_CM 做过字段重命名)。
  • 字段的受控词表与 TYPE 字段要求。
  • 该字段的缺失编码约定。

第三步:联系 Front Door 做免费咨询

这是最容易被跳过但最有价值的一步。协调中心能告诉你:这个研究问题在已有数据上是否可行、哪些站点可能有数据、历史上的类似查询遇到过什么问题。

第四步:准备 Data Network Request

以表壳(table shell)形式明确所需字段与人群定义。表壳的作用是让各站点明确知道要返回什么,避免解释歧义。

第五步:等待可行性结果(通常 6-8 周)

结果形式是站点级聚合计数。这一步的输出不是数据,是"能不能做"的答案。

第六步:正式方案与协议

如果可行性结果支持推进,进入正式方案设计、DUA 签署、IRB 审查(依托 SMART IRB / IREx 实现单一 IRB 审查)。

第七步:执行查询与结果回收

按批准的分析计划执行查询,回收站点级结果与数据质量指标。

第八步:分析与发表

分析时必须显式讨论:跨站点异质性、数据质量限制、缺失编码处理方式、以及基于 EHR 的固有偏倚。

6.4 分析代码的构造要点

虽然拿不到行级数据,但研究者的查询逻辑需要被精确表达。以下是构造要点。

要点一:显式处理缺失编码

在任何数值比较前,必须先排除信息性缺失值。伪代码层面的模式:

如果 LAB_RESULT_VALUE 属于 {'NI', 'UN', 'OT'} 或为空 → 标记为缺失,不参与数值比较
否则 → 转换数值,参与比较

绝对不要直接对可能含缺失编码的字段做数值运算。

要点二:始终校验 TYPE 字段

每条基于编码的记录,都必须校验其对应的 TYPE 字段是否与预期码集匹配:

表 编码字段 类型字段 预期值
DIAGNOSIS DX DX_TYPE ‘09’(ICD-9)或 ‘10’(ICD-10)
PROCEDURES PX PX_TYPE 对应码集标识
LAB_RESULT_CM LAB_RESULT LAB_RESULT_PX_TYPE 对应码集标识
ENCOUNTER DRG DRG_TYPE 对应码集标识

要点三:以 ENROLLMENT 为分母基准

所有率的分母必须来自 ENROLLMENT 定义的覆盖人群,而非"有记录的患者数"。

要点四:明确日期选择

在多个可用日期(就诊日期、诊断日期、检验日期、配药日期)中,明确选择哪一个作为时间锚点,并在方法学中说明。

要点五:单位标准化前置

检验值比较前必须确认单位已映射到 UCUM 且与预期单位一致。不要假设不同站点的同一 LOINC 使用同一单位。

6.5 与 AI 建模工作流的对接方式

场景 A:把 PCORnet 作为特征工程的知识来源

即使不直接使用 PCORnet 数据,它的 CDM 本身是一个优秀的表结构设计参考。当你在设计自己的临床数据仓库或特征存储时,CDM 的表划分(尤其是 PRESCRIBING / DISPENSING / MED_ADMIN / EXTERNAL_MEDS 的四分、ENROLLMENT 的覆盖窗设计)是经过大规模实践检验的范式。

场景 B:通过联邦学习对接

PCORnet 的架构与联邦学习(federated learning)理念天然契合。差异在于:联邦学习通常交换模型参数,PCORnet 交换聚合统计量。要让模型训练走 PCORnet 路径,需要专门的联邦学习协议与治理审批,不属于标准 Front Door 流程。

场景 C:探索性分析的分层策略

由于查询有成本与周期,建议:

  • 把探索性分析设计成少量信息量最大的查询,而不是大量小查询。
  • 每个查询定义尽量一次覆盖多个分析目标(如同时输出总体与各亚组的计数)。
  • 在提交前用本地模拟数据充分测试查询逻辑,避免因逻辑错误浪费一次完整查询周期。

6.6 数据质量的四种典型用途

DAIMS 的 24 项检查(详见 §7)不只是发布门槛,它们在实践中服务于四类决策:

用途一:判断某个结论是否可信。 如果关键变量的完整性评分很低,那么基于该变量的结论需要加限定。

用途二:判断某个亚组分析是否有足够样本。 某站点某亚组的记录数很少,可能是真实情况,也可能是数据质量问题,需要结合质量指标判断。

用途三:判断跨站点比较是否成立。 如果两个站点的同一概念完整性差异很大,那么它们的计数差异可能反映的是数据质量差异而非真实人群差异。

用途四:为方法学部分提供写作素材。 高质量的论文会显式报告数据质量指标与处理方式,这正是审稿人关注的。

6.7 常见误解纠正

误解 实际情况
“PCORnet 是一个可以申请下载的数据集” 它是分布式网络,通常只能获得聚合结果
“CDM 是一个数据库软件” 它是数据模型规范,各站点用各自的数据库实现它
“所有站点的数据是一样的时间窗” 各站点刷新周期与时间窗可能不同,必须看 HARVEST
“PATID 是患者唯一标识” 是站点内标识,跨站点需 HASH_TOKEN 匹配
“缺失就是空白” 有 ‘NI’ / ‘UN’ / ‘OT’ 三种信息性缺失,语义不同
“PRESCRIBING 就等于用药” 它只表示医生开具,未取药的患者也在里面
“数据是免费的” 咨询与可行性免费,数据查询为付费服务
“可以拿到个体级数据做模型训练” 标准流程下不提供,需另行协商且限制严格

6.8 一次完整研究的实操时间线

阶段 主要工作 相对时长
问题定义 明确研究问题、目标人群、结局 数周
规范查阅 确认 CDM 字段、词表、缺失约定 1-2 周
免费咨询 与 Front Door 讨论可行性 1-2 周
可行性查询 Data Network Request 通常 6-8 周
方案与协议 方案设计、DUA、IRB 数周至数月
查询执行 正式查询与结果回收 数周
分析与发表 统计分析与论文撰写 数月

这张表的作用是建立预期:从想法到第一个可行性数字,通常需要 2-3 个月。 把 PCORnet 当作"提交查询立刻有结果"的工具会导致严重的时间规划错误。

§7 数据质量与八大坑点

7.1 数据质量框架总览

PCORnet 的数据质量评估围绕四个维度展开,并通过 DAIMS 的 24 项检查落地:

维度 英文 核心问题
一致性 Conformance 数据是否符合 CDM 规定的结构、类型与受控词表?
完整性 Completeness 应有数据的字段是否真的被填充,缺失是否被正确编码?
合理性 Plausibility 数值是否落在临床可能的范围内?
持久性 Persistence 同一患者的记录在时间维度上是否自洽?

7.2 八大坑点(四段式详解)

以下八个坑点均来自 PCORnet 官方数据质量文档、CDM 实现指导以及使用 PCORnet 的同行评审论文中记录的真实现象。每个坑点按"问题 / 症状 / 解决方案 / 参考"四段式展开。


坑点 1:TYPE 字段错误导致查询使用错误码集,返回无效或空结果

问题

CDM 中多条表使用"编码 + 类型"的双字段设计:诊断有 DX 与 DX_TYPE,操作有 PX 与 PX_TYPE,检验有 LAB_RESULT 与 LAB_RESULT_PX_TYPE,就诊有 DRG 与 DRG_TYPE。_TYPE 字段声明该编码属于哪个码集(如 ICD-9、ICD-10、CPT、HCPCS)。如果 ETL 过程把 TYPE 字段填错,编码本身可能是对的,但查询逻辑会按错误的码集去解释它。

这是 PCORnet 中破坏力最大的一类问题,因为它静默失败——查询不会报错,只会返回零条或明显偏少的记录。

症状

  • 某个在本站点真实存在的疾病队列,查询返回计数为 0 或数量级明显偏少。
  • 同一查询在不同站点返回的计数差异极大,且与站点规模无关。
  • 基于某个 ICD-10 编码的查询能返回结果,但同一疾病的 ICD-9 编码查不到记录(或反之)。
  • 检验项目的查询在部分站点返回空结果,但该站点明确有该检验。
  • 排错时发现编码值本身存在,但 TYPE 值与编码不匹配。

解决方案

  1. 每条基于编码的查询都必须同时约束 TYPE 字段。不要只写 WHERE DX IN (...),必须写 WHERE DX IN (...) AND DX_TYPE IN ('09','10')。
  2. 在查询设计阶段做码集覆盖检查:对跨越 ICD-9/ICD-10 转换时点的研究,必须同时纳入两套编码,并按 DX_TYPE 区分。
  3. 先做小规模探测查询:在提交大查询前,先用一个已知必然存在的疾病(如高血压)测试该站点的 TYPE 字段是否规范,用它的返回情况作为站点数据规范的探针。
  4. 在分析计划中显式记录 TYPE 约束,并在论文方法学部分说明,因为这直接影响可复现性。
  5. 把 TYPE 约束纳入 DAIMS 检查的关注点:TYPE 字段的取值分布是否存在大量非预期值,是一致性维度的核心检查项。

参考


坑点 2:‘NI’ 被误当作缺失或真实阴性

问题

CDM 定义了三个信息性缺失编码:'NI'(No Information,源系统中没有采集该信息)、'UN'(Unknown,采集了但患者不知道或不适用)、'OT'(Other,系统中有值但无法映射到受控词表)。这三个值的语义与"空值"完全不同,但它们在数据里看起来都像"没有内容"。

最常见的误用是把 'NI' 直接当作"阴性"或"缺失"处理。例如在计算"有多少患者有某项检验异常"时,如果把 'NI' 排除出分母,会高估异常率;如果把 'NI' 计入分母但不计入分子,会低估异常率。两种做法都会产生系统性偏倚,而且方向相反。

症状

  • 同一指标在不同站点差异巨大,且差异与该站点的数据完整性评分负相关。
  • 对某字段做 COUNT(*) 与 COUNT(字段) 得到的结果非常接近,但临床直觉认为该字段应有大量缺失。
  • 数值型字段中出现无法转换为数字的字符串,导致类型转换失败或静默产生 null。
  • 某站点的某检验结果缺失率异常低,但该检验在该站点实际并不常规开展。
  • 在缺失率分析中,‘NI’ / ‘UN’ / ‘OT’ 混在一起被统计为同一类缺失,导致无法区分"信息未采集"与"患者不知道"。

解决方案

  1. 在分析代码中显式区分三类缺失。把 'NI'、'UN'、'OT' 分别映射为不同的缺失类型标记,不要合并。
  2. 在任何数值运算前先做缺失编码过滤。模式上必须先判断值是否属于缺失编码集合,再决定是否转换为数值。
  3. 在方法学部分报告三者的比例。‘NI’ 比例高说明源系统未采集(可能是诊疗流程问题);‘UN’ 比例高说明采集了但信息质量低(可能是患者沟通问题)。两者的含义与处理方式不同。
  4. 不要在分母处理上"一刀切"。需要明确是在"信息已采集者"中计算率,还是在"全部人"中计算。两种口径都合理,但必须说明是哪种。
  5. 对关键变量做缺失模式分析:缺失是否与某些站点、某些时间段、某些人群系统性相关。如果是,说明存在信息性缺失(missing not at random),需要额外的统计处理。

参考


坑点 3:检验单位未映射到标准值或编码为 Other / Unknown / No information

问题

检验结果是 PCORnet 相对理赔数据的核心优势,但这个优势有一个前提:单位被正确映射到 UCUM。现实中,各站点的原始系统里单位写法五花八门(mg/dL、mg/dl、MG/DL、毫克/分升),映射到 UCUM 需要站点 ETL 做大量策展工作。

当某个单位无法映射时,站点会将其编码为 'Other'、'Unknown' 或 'No information'。这类编码的存在意味着:该检验结果虽然有数值,但数值的含义不明确。 官方文档中记录了一个典型例子——HIV 病毒载量的单位在部分站点缺失,导致该检验的结果无法用于任何阈值判断。

症状

  • 某检验项目在部分站点有大量结果,但这些结果的单位是 'Other' 或 'Unknown'。
  • 结果值的数量级明显异常(如血糖值出现 90 而不是 90 mg/dL 应有的量级,或出现 5.0 而不是 90)。
  • 同一 LOINC 编码在不同站点的单位不同(如一处是 mg/dL,一处是 mmol/L)。
  • 对结果值做数值分布分析时,发现明显的双峰或长尾,且两个峰对应不同的量级。
  • 结果范围检查(如 HbA1c 应在 4-20% 之间)出现大量越界值。

解决方案

  1. 始终把 RESULT_UNIT 与 RESULT_NUM 一起取回,不要只取数值。单位必须与数值捆绑分析。
  2. 在跨站点合并前做单位一致性检查:按 LOINC 编码分组,列出各站点使用的单位集合。如果单位集合不唯一,必须先做单位换算或分层分析。
  3. 把 'Other' / 'Unknown' / 'No information' 单位的结果从数值分析中排除,但在方法学中报告其比例。这些结果并非无用——它们可以支持"做过这个检验"的存在性分析,只是不支持"结果是多少"的定量分析。
  4. 对关键检验项目做量级合理性检查:先看数值分布的百分位数,再决定阈值。不要用文献中的阈值直接套用,除非单位已确认一致。
  5. 注意 CDM 中 RAW 字段的存在:超出 LOINC 策展列表的单位应映射为 'OT' 并同时保留原始值,原始字段可能是找回信息的唯一途径。

参考


坑点 4:单位错误与 UCUM 的大小写/多对一陷阱

问题

即使单位被映射到了 UCUM,仍可能出现两类精细错误:

第一类:单位本身错误。 官方文档记录了一个典型案例:某站点把本应为 g/dL 的单位映射成了 g/L,导致所有数值相差 10 倍。这类错误不会导致查询失败,只会让所有基于该检验的结论偏差一个固定倍数。

第二类:UCUM 的大小写与多对一问题。 UCUM 是大小写敏感的:'A' 与 'a' 是不同的单位(安培与年)。此外存在多对一的情况,例如 nmol/mg{prot} 这类复合单位在映射时可能有多种写法指向同一语义,但 UCUM 字符串不同。这会导致本应相同的单位在数据里表现为多个不同值,从而破坏分组聚合。

症状

  • 某检验的值域在所有站点中系统性偏离预期(如全部偏大或偏小一个数量级)。
  • 单位字段中同一个语义对应多个不同的字符串。
  • 按单位分组统计时,出现多个看似相同但字符串不同的分组。
  • 单位字符串中存在大小写不一致的变体。
  • 换算后的数值与其他来源(如文献报告的范围)系统性不符。

解决方案

  1. 建立单位白名单校验。对每个计划使用的 LOINC 编码,预先定义可接受的 UCUM 单位集合。出现白名单外的单位时,该记录应被隔离审查,而不是直接参与分析。
  2. 做单位与数值的联合合理性检查。例如某检验的生理范围是 4-20,如果某站点大量出现 40-200,基本可以确认是单位映射错误。
  3. 对单位字符串做规范化处理,但保留原始字符串以便追溯。规范化仅用于分组,不用于替换原始值。
  4. UCUM 复合单位要按语义而非字符串比较。如果无法建立映射表,宁可把该单位的结果单独分析,也不要强行合并。
  5. 在方法学中报告单位映射的处理方式,尤其是排除或换算的规则。审稿人会关注这一点,因为它直接影响可复现性。

参考


坑点 5:忽视 ENROLLMENT 覆盖窗,导致分母错误

问题

这是设计层面最严重、也最难在事后发现的一类错误。ENROLLMENT 表定义了患者在系统覆盖范围内的连续时间窗。如果分析中不使用它来界定分母,就会出现一个根本性的歧义:

一个患者在某个时间点没有记录,是因为他不需要就诊,还是因为他已经不在这个系统的覆盖范围内?

这两种情况的临床含义完全不同。前者是"健康",后者是"未知"。但在没有 ENROLLMENT 约束的分析里,两者都会被当作"没有事件",从而使率的分母被系统性高估或低估。

症状

  • 患病率或发病率在不同站点差异极大,且差异方向不一致。
  • 长期随访研究中,随访时间越长,事件率反而越低(因为失访者被计入了无事件人群)。
  • 某站点报告的某慢性病患病率明显低于其人群特征应有的水平。
  • 患者数随时间推移单调增加但从不减少(说明没有考虑覆盖终止)。
  • 计算"人均就诊次数"时结果异常低。

解决方案

  1. 所有率的分母必须来自 ENROLLMENT 定义的覆盖人群,而不是"在数据库中出现的患者数"。
  2. 明确要求最小连续覆盖时长。常见做法是要求索引事件前有至少 6 或 12 个月的连续覆盖,以确保基线信息完整。
  3. 显式定义覆盖中断的容忍度。允许短暂中断(如换保险期间的几天间隙)还是要求严格连续,需要在方案中写清。
  4. 随访终止规则必须包含 ENROLLMENT 结束,而不只是死亡或研究结束。
  5. 在分站点分析中优先检查 ENROLLMENT 的分布。如果某站点的覆盖时长分布与其他站点差异很大,该站点的率与其它站点不可直接比较。
  6. 报告人均观察时间(person-time),而不只是人数。这能直接暴露分母问题。

参考


坑点 6:混淆 PRESCRIBING 与 DISPENSING,误把处方当作实际用药

问题

CDM 中用药信息分布在多张表里:PRESCRIBING 记录医生开具,DISPENSING 记录药房配药,MED_ADMIN 记录实际给药,EXTERNAL_MEDS 记录网络外用药。这四张表的语义不同,但在许多分析中被当成同一个"用药"概念混用。

最典型的错误是把 PRESCRIBING 当作"患者用了这个药"。实际上,医生开具后患者可能根本没去取药;即使取了一次,也可能没有持续服用。在药物暴露研究中,这个差异直接决定了暴露分类的正确性。

另一个相关问题:MED_ADMIN 在住院场景中记录实际给药,但如果被用于门诊场景,会严重低估用药(因为门诊没有给药记录)。

症状

  • 药物暴露率显著高于该药物在同类人群中的预期水平。
  • 药物暴露与结局的关联方向与文献相反或强度异常。
  • 用 PRESCRIBING 与 DISPENSING 分别计算,得到差异巨大的暴露率,且无法解释。
  • 住院患者中出现大量"无用药记录",但病历明确有用药。
  • 剂量分析中出现逻辑矛盾(如配药天数与开药天数严重不符)。
  • 长期用药研究中的暴露比例随时间单调上升(因为每次开药都被计为新暴露)。

解决方案

  1. 明确研究问题需要哪张表。要研究"处方行为"用 PRESCRIBING;要研究"实际暴露"优先用 DISPENSING;要研究"住院给药"用 MED_ADMIN。
  2. 需要连续暴露定义时,用 DISPENSING 推算覆盖天数(days supply)并处理间隙。常见的做法是允许一定天数的间隙(如覆盖间隙 ≤ 30 天视为连续),并把间隙规则写进方案。
  3. 不要混用不同表的记录来计算暴露,除非有明确的合并逻辑。如果合并,必须说明去重与优先级规则。
  4. 注意 EXTERNAL_MEDS 的存在(V7.0 新增)。它的存在证明了前三张表会漏记网络外用药。如果研究药物存在大量非处方或网络外使用可能(如维生素、部分镇痛药),漏记会显著影响结论。
  5. 在方法学中显式报告所用的表与暴露定义算法,这是药物流行病学论文的标准要求。

参考


坑点 7:ICD-9 / ICD-10 转换与编码实践变迁造成的"假断裂"

问题

美国在 2015 年 10 月完成 ICD-9-CM 到 ICD-10-CM 的转换。对于跨越该时点的研究,如果编码列表只覆盖一套体系,会看到疾病发生率在转换时点附近出现人为的"断裂"。更隐蔽的是,即使编码列表两套都写了,编码实践本身的变化也会造成假信号——ICD-10 的编码粒度远高于 ICD-9,同一临床情况在 ICD-10 下会被拆分为多个更细的编码。

此外,编码实践还受到制度因素影响:某些编码在特定时期因为报销政策变化而被更频繁或更少地使用。这类变化与疾病的真实发生率无关,但会完整地出现在数据里。

症状

  • 疾病发生率在 2015 年 10 月前后出现不符合临床逻辑的跳变。
  • ICD-9 编码与对应 ICD-10 编码的计数差异远大于疾病本身的流行病学预期。
  • 同一疾病的患病率在用药前后(如新药上市)出现与实际不符的变化。
  • 分站点比较时,编码粒度差异导致某些站点记录数明显高于其他站点。
  • 对编码列表做了扩展或收窄后,结论方向发生改变(说明结论对编码定义敏感)。

解决方案

  1. 编码列表必须同时覆盖 ICD-9 与 ICD-10,并显式按 DX_TYPE 区分。使用官方或经过验证的 GEM(General Equivalence Mappings)映射作为起点,但不要盲信自动映射。
  2. 在转换时点附近设置过渡期,或把跨越该时点的研究限制在单一编码体系内(如只分析 2016 年之后)。
  3. 做编码敏感度分析:用宽口径与窄口径两套编码定义分别分析,如果结论方向不同,必须在论文中讨论。
  4. 对编码粒度差异做站点层检查:如果某站点的编码数明显多于其他站点,可能是该站点的编码习惯更细,而非真实疾病更多。
  5. 区分"编码变化"与"疾病变化":在时间序列分析中,把已知的政策或编码体系变化时点标注出来,避免把制度变化误读为流行病学信号。

参考


坑点 8:各站点 ETL 差异导致跨站点可比性下降(最根本的坑)

问题

这是一个统摄性坑点:前面七个坑点在单个站点内部可能都被妥善处理,但各站点处理方式不同,导致跨站点结果仍然不可比。

CDM 规范规定了"表结构与字段语义",但没有(也无法)规定"ETL 实现的每一个决策"。这些未被规定的决策包括:

  • 一个患者属于本系统覆盖范围的判定逻辑
  • 就诊记录的合并与去重规则
  • 诊断编码的取舍规则(一次就诊有多个诊断时如何记录)
  • 检验结果值的清洗规则(超范围值如何处理)
  • 原始系统已更正值与取消值如何处理
  • 转诊记录的采集深度(“referred to” 专科字段的缺失率在站点间差异极大)
  • CD4 结果单位为 % 而无法转换为 cells/uL 时的处理方式(可能导致信息直接丢失)
  • 患者去重的 HASH_TOKEN 生成与匹配阈值

这些差异不是任何站点的错误——它们各自都是在其本地数据现实下的合理选择。但它们的累积效果是:同一个查询在 8 个 CRN 返回的数字,彼此之间的可比性远低于表面看起来的程度。

症状

  • 同一查询在不同站点的计数差异远超人口规模差异所能解释的范围。
  • 某站点的某类记录数量级异常(如转诊记录几乎为空)。
  • 分站点异质性检验显示显著异质性,但找不到临床层面的解释。
  • 合并所有站点后的结果与分站点结果的加权平均不一致(说明存在 Simpson 悖论式的结构效应)。
  • 同一概念在不同站点的时间趋势方向相反。
  • 论文在同行评审中被质疑跨站点可比性。

解决方案

  1. 永远先看分站点结果,再看合并结果。合并数字掩盖异质性。
  2. 拿到结果后第一件事是核对 HARVEST 元数据:各站点的时间窗、规模、CDM 版本是否一致。时间窗不同则计数不可比。
  3. 对关键变量做站点层的数据质量画像:不只是看总缺失率,要看缺失模式在各站点是否一致。
  4. 在方案中预先声明异质性处理策略:是报告随机效应合并结果,还是分层报告,还是把异质性本身作为发现。不要事后选择。
  5. 对已知的高缺失字段(如转诊专科字段)做专门说明,或直接从分析中排除并报告原因。
  6. 避免对"站点间差异"做过度解读。站点差异可能反映真实医疗实践差异(这是有价值的发现),也可能反映数据质量问题(这是需要处理的噪声)。区分两者的唯一方式是结合数据质量指标与临床知识判断。
  7. 在论文中显式报告站点层细节,而不是只报告合并结果。这是这类研究可信度的关键。

参考

7.3 DAIMS 24 项数据质量检查(逐项拆解)

DAIMS 是 PCORnet 的数据质量评估框架,通过 24 项检查从四个维度评估站点数据。以下逐项拆解,每项包含:检查内容、所属维度、以及"对你意味着什么"。

一致性维度(Conformance)—— 检查 1-6

检查 1:表结构完整性
检查 CDM 实例中是否包含全部 25 张核心表,即使表为空。
对你意味着什么:如果某站点缺表,不是"这个站点没有这类数据",而是"这个站点未完成 CDM 规范化"。任何依赖该表的查询在该站点都会失败或返回空。

检查 2:字段存在性
检查每张表的字段是否符合 CDM 规定的字段清单。
对你意味着什么:缺失的字段可能在后续版本中被新增(如 V7.0 的 RACE_ETH_* 字段)。使用新字段前需确认各站点已完成版本升级。

检查 3:数据类型合规
检查字段的数据类型是否符合规范(如键字段应为 text)。
对你意味着什么:类型不合规会导致数值运算静默出错,尤其是 PATID 这类键字段被当作数字处理时。

检查 4:受控词表合规 —— 诊断编码
检查 DX 与 DX_TYPE 的取值是否在允许的码集内。
对你意味着什么:这一项直接关系到坑点 1。此项评分低的站点,其诊断相关查询结果需要高度警惕。

检查 5:受控词表合规 —— 操作与其他编码
检查 PX / PX_TYPE、DRG / DRG_TYPE 等编码字段的合规性。
对你意味着什么:操作类研究的可比性直接受此项影响。

检查 6:CDM 版本一致性
检查站点使用的 CDM 版本,确认与查询设计所依据的版本一致。
对你意味着什么:版本不一致意味着字段集不同。这是跨站点比较前必须核实的第一项。

完整性维度(Completeness)—— 检查 7-14

检查 7:必填字段填充率
检查 CDM 规定为必填的字段是否被实际填充。
对你意味着什么:必填字段的填充率是数据可信度的基线。如果连必填字段都大量为空,其他字段的质量更不可靠。

检查 8:信息性缺失编码使用规范性
检查 'NI' / 'UN' / 'OT' 是否被正确使用,而非与空值混用。
对你意味着什么:这一项直接对应坑点 2。规范使用的站点,其缺失模式可解释;不规范的站点,缺失分析不可靠。

检查 9:患者人口学完整性
检查 DEMOGRAPHIC 表中关键字段(出生日期、性别、种族、族裔)的填充情况。
对你意味着什么:人口学字段的缺失通常是信息性缺失(missing not at random),与人群特征相关。这会直接影响亚组分析的可靠性。

检查 10:ENROLLMENT 覆盖率
检查患者是否有合理的覆盖时间窗记录。
对你意味着什么:这一项对应坑点 5,是所有率类指标的分母基础。覆盖率低的站点,其发病率与患病率数据基本不可用。

检查 11:就诊记录完整性
检查 ENCOUNTER 表的时间覆盖与记录密度。
对你意味着什么:就诊记录是下游表挂接的枢纽。记录稀疏会连带影响诊断、操作、生命体征、检验的可关联性。

检查 12:诊断记录完整性
检查 DIAGNOSIS 记录的数量与分布是否合理。
对你意味着什么:诊断记录数异常低可能意味着编码流程未完整纳入 CDM,而非人群更健康。

检查 13:检验结果记录完整性
检查 LAB_RESULT_CM 的记录量与 LOINC 映射广度。
对你意味着什么:LOINC 映射越广,可支持的检验类研究越多。映射窄的站点会限制某些研究的可行性。

检查 14:用药记录完整性
检查 PRESCRIBING 与 DISPENSING 的记录情况。
对你意味着什么:对应坑点 6。需要区分是"没有处方"还是"处方未纳入模型"。

合理性维度(Plausibility)—— 检查 15-19

检查 15:年龄合理性
检查患者年龄是否落在生理可能范围内(含出生日期与就诊日期的逻辑一致性)。
对你意味着什么:年龄是几乎所有队列研究的基础变量。年龄异常的记录通常是数据错误,需要排除。

检查 16:生命体征数值合理性
检查身高、体重、血压、BMI 等是否落在临床可能范围。
对你意味着什么:体重 500 公斤这类值不是真实数据,但会严重扭曲均值与回归结果。

检查 17:检验结果单位合理性
检查 RESULT_UNIT 是否为有效的 UCUM 单位,以及与预期单位是否一致。
对你意味着什么:这一项对应坑点 3 与坑点 4。它是使用检验值做阈值判断前的必查项。

检查 18:日期逻辑合理性
检查事件日期之间的逻辑关系(如诊断日期不早于出生日期、出院不早于入院)。
对你意味着什么:日期逻辑错误会破坏时间序列分析与随访时间计算。

检查 19:编码与数值一致性
检查同一概念在编码字段与数值字段之间是否一致(如检验编码与结果值的匹配)。
对你意味着什么:这一项能发现 LOINC 映射错误——编码对了但结果值来自另一个检验。

持久性维度(Persistence)—— 检查 20-24

检查 20:患者记录时间一致性
检查同一患者的记录在时间维度上是否自洽。
对你意味着什么:时间不自洽意味着患者的记录历史不可信任,纵向研究的基础被破坏。

检查 21:ENROLLMENT 与事件的时间一致性
检查事件是否发生在覆盖时间窗内。
对你意味着什么:如果大量事件落在覆盖窗外,说明 ENROLLMENT 的定义与事件记录脱节,分母会有系统性错误。

检查 22:重复记录检测
检查是否存在重复的患者、就诊或事件记录。
对你意味着什么:重复记录会导致计数高估。跨站点场景下,重复还包括同一真实患者在多个站点的记录,需要 HASH_TOKEN 匹配来处理。

检查 23:跨时间窗的数值漂移
检查同一指标在不同时间窗的值域是否稳定。
对你意味着什么:突然的数值分布变化可能是单位或映射规则变更所致,而非真实变化。这类问题在时间序列研究中会制造假信号。

检查 24:HARVEST 元数据一致性
检查 HARVEST 表中的规模、时间窗、版本信息是否与实际数据一致。
对你意味着什么:这是跨站点可比性的元数据基础。HARVEST 不可信的站点,其结果的可比性无法评估。

7.4 DAIMS 评分与解读

评分结构

DAIMS 的 24 项检查按维度归入四类,每类形成独立的评分。评估结果的解读逻辑如下:

维度 检查项 核心关注 低分后果
一致性(Conformance) 1-6 结构、类型、词表是否合规 查询可能静默失败或返回错误码集结果
完整性(Completeness) 7-14 数据是否被填充、缺失是否被正确编码 分母不可靠,缺失分析不可信
合理性(Plausibility) 15-19 数值是否落在临床可能范围 均值与回归结果被异常值扭曲
持久性(Persistence) 20-24 时间维度是否自洽 纵向分析与随访时间计算失效
四类评分的组合解读

组合一:一致性高 + 完整性高 + 合理性高 + 持久性高

数据质量优秀。可以支持较大胆的分析设计,包括需要精细时间窗的纵向研究。仍应报告数据质量指标作为方法学的一部分。

组合二:一致性低(其他高)

这是最危险的组合。数据看起来很"丰满"(填充率高、数值合理),但结构与词表不合规。查询返回的结果看起来正常,实际上可能是基于错误的码集解释。遇到这种组合,必须先回到坑点 1 做 TYPE 字段探测。

组合三:完整性低(其他高)

数据的结构与数值质量好,但覆盖不全。这种情况下,分母问题优先于分子问题。需要重点核实 ENROLLMENT 覆盖率与关键变量的缺失模式。这类站点的率类指标应谨慎使用,但队列特征描述可能仍可用。

组合四:合理性低(其他高)

结构与填充都合规,但数值异常。通常是单位映射问题(对应坑点 3、4)。这类问题最容易修复——找到异常值群体,回溯单位定义,做单位换算或排除。但如果不做,会直接影响所有基于该变量的定量结论。

组合五:持久性低(其他高)

数据在横截面上看起来很好,但纵向不自洽。这类站点不能被用于纵向研究,但横截面描述性分析可能仍然可用。需要特别注意坑点 5(ENROLLMENT 与事件时间一致性)与检查 23(跨时间窗数值漂移)。

如何把评分用于实际决策

决策一:某站点能否纳入研究?

如果研究依赖某个特定变量(如 HbA1c 阈值),则检查 17(单位合理性)与检查 13(检验完整性)是该站点的准入门槛。不达标则排除该站点,并在论文中说明。

决策二:某结论能说多强?

如果关键变量的完整性评分处于中等水平,结论应表述为"在信息已采集的患者中"而非"在该人群中"。这个限定词不是保守,而是准确。

决策三:跨站点异质性如何解释?

当站点间结果差异显著时,先查四个维度的评分差异。如果某站点在某个维度上明显偏离,异质性很可能部分来自数据质量差异,而非人群差异。

决策四:要不要做敏感性分析?

当某个站点的某项评分为中等或偏低时,做一次"排除该站点"的敏感性分析。如果结论方向不变,可信度提升;如果方向改变,这就是核心发现之一。

7.5 数据质量问题的三个实际案例模式

模式一:静默的零结果

某研究者查询一个明确的疾病队列,某站点返回 0。第一反应是"这个站点没有这类患者"。实际情况是该站点的 DX_TYPE 编码方式与查询预期不符。排查顺序:先做已知必然存在疾病的探测查询(如高血压),如果探测也返回 0,则问题是结构性的而非数据性的。

模式二:数量级偏差

某检验的均值在合并所有站点后明显偏离文献报告范围。排查顺序:先看分站点均值,通常会发现一个或几个站点的均值相差整数倍(如 10 倍、1000 倍),指向单位映射错误。

模式三:时间序列断裂

某疾病的年发生率在某个时点突然跳变。排查顺序:检查该时点是否对应 ICD-9/ICD-10 转换(2015 年 10 月)、政策变化、或站点数据刷新规则的变更。区分"编码变化"与"疾病变化"是解读的第一步。

7.6 质量控制的实操检查表

在任何基于 PCORnet 的分析启动前,逐项确认:

  • [ ] 已核对各站点的 CDM 版本与 HARVEST 时间窗
  • [ ] 已确认各站点的时间窗一致(或已按不一致做分层处理)
  • [ ] 已对关键编码字段做 TYPE 约束(坑点 1)
  • [ ] 已在数值运算前过滤 ‘NI’ / ‘UN’ / ‘OT’(坑点 2)
  • [ ] 已核实关键检验的单位集合唯一性(坑点 3、4)
  • [ ] 已确认分母来自 ENROLLMENT(坑点 5)
  • [ ] 已明确用药分析使用哪张表及其理由(坑点 6)
  • [ ] 已确认编码列表覆盖 ICD-9 与 ICD-10(坑点 7)
  • [ ] 已完成分站点结果与合并结果的对照(坑点 8)
  • [ ] 已规划敏感性分析与异质性报告方式
  • [ ] 已在方法学中写入数据质量指标与处理规则

§8 基准与代表性使用

8.1 网络规模基准

以下为可核实的规模指标,用于评估研究可行性:

指标 数值 口径说明
年度活跃患者 约 4,700 万 每年至少一次就诊(2023 年)
累计患者 超过 1 亿 近 10 年内有活动记录
CRN 累计覆盖 约 8,000 万 2009-2018 年至少一次就诊
HPRN 人群规模 超过 6,000 万 健康计划研究网络
CRN 数量 8 个 2025 年
健康系统数量 78 家 含超过 13,000 家医院及其他诊疗场所
单个网络示例(STAR) 8,550,251 名唯一患者 2025 年

8.2 数据量级增长基准(Cycle 7 → Cycle 16)

PCORnet 定期发布网络数据容量指标。Cycle 7 到 Cycle 16 之间的增长可用作研究可行性的参考基准:

指标 Cycle 7 Cycle 16 说明
患者数(至少一次面对面就诊) 约 2,540 万 约 3,690 万 增长约 45%
诊断记录数 约 37 亿 约 69 亿 增长约 86%
检验结果数 约 74 亿 约 145 亿 增长约 96%
LOINC 映射项数(中位数) 较低 超过 2,500 检验覆盖广度提升

这组数字的用途:如果一项研究需要特定检验的长时间序列,LOINC 映射项数超过 2,500 意味着可用的检验种类已经相当丰富。但映射广度不等于每个站点的覆盖深度一致——某些检验可能只在少数站点有数据。

8.3 标志性研究基准

研究 类型 规模/特点 说明
ADAPTABLE 务实临床试验 阿司匹林剂量(81mg vs 325mg) PCORnet 旗舰研究,回答长期争论的临床问题
PREVENTABLE 务实临床试验 约 9,000 万美元规模 PCORnet 规模最大的研究,面向老年人群评估他汀类在预防痴呆与失能方面的作用
PCORnet 累计支持研究 多类型 51 项研究 覆盖观察性研究与务实试验

8.4 学术产出基准

  • 2026 年 2 月 Medical Care 特刊:PCORnet 专刊,含 19 篇同行评审开放获取文章,系统总结了网络建设经验与使用教训。
  • PCORnet 十年回顾论文:总结网络从 2014 年到 2024 年的发展,包括规模、数据质量改进与代表性研究。
  • PCORnet 2020 论文(PMC7521354):报告 CRN 与 HPRN 的规模与人群特征。
  • 2014 年首发论文(Fleurence et al., JAMIA 2014;doi:10.1136/amiajnl-2014-002747;PMID 24821743;PMC4078292):奠定网络的设计理念与架构。
  • 2019 年 JAMIA 论文(Smith et al., JAMIA 26(11):1305-1313;doi:10.1093/jamia/ocz097):系统指出 PCORnet 基于 EHR 而非理赔数据的局限性。

8.5 基于 EHR 的固有偏倚:必须写进论文的限制

PCORnet 的公开文献中反复强调的一类限制,值得作为基准认知固定下来:

限制一:就诊选择偏倚。 只有产生了医疗接触的事件才会被记录。一个从未就诊的人在整个数据里不存在,但他的健康状况可能与常就诊者系统不同。

限制二:系统外事件缺失。 患者在 PCORnet 网络之外的就诊、检查、用药不会出现在数据里。对于跨系统流动频繁的人群(无保险者、频繁搬迁者、跨州就医者),这是系统性缺口。

限制三:编码行为不等于临床真实。 编码受报销政策、机构规范、编码员判断影响。同一临床情况在不同机构的编码可能不同。

限制四:回顾性记录的时间偏倚。 既往病史往往在首次就诊时被一次性补记,导致"疾病发生率"在患者进入系统的时点附近出现人为高峰。

限制五:检验只在被开具时存在。 没有做某项检验,不代表该项指标正常。检验缺失本身与疾病风险相关(医生更可能给高风险者开检验),这是典型的信息性缺失。

限制六:生命体征与体重的测量频率不均。 体重被测量的频率在人群中差异极大,使得基于体重的纵向分析(如体重变化轨迹)在部分人群中不可行。

限制七:患者报告结局的采集人群非随机。 PRO_CM 的数据来自愿意填写问卷的患者,这个群体与整体人群存在系统性差异。

限制八:死亡数据完整性低。 死亡信息依赖站点与国家死亡索引的匹配程度,漏报率高于临床数据,且滞后明显。

8.6 可行性判断的基准经验

样本量估算的保守做法:不要用网络总患者数(4,700 万)来估算可达样本。需要依次施加以下折减:

  1. 目标疾病的患病率或发生率
  2. 年龄与其他人口学限制
  3. 需要有 ENROLLMENT 连续覆盖的约束(通常会损失相当比例)
  4. 需要的关键检验或用药记录存在(会进一步损失)
  5. 排除标准的筛除

实践中,从网络总规模到最终合格队列,缩减两个数量级是常见的。用总患者数做规划会导致严重的高估。

时间预期的基准:见 §6.8 的时间线。从研究问题到第一个可行性数字通常 2-3 个月;从想法到可发表结果通常以年计。

站点数选择:纳入更多站点会增加样本量,但也增加异质性与协调成本。如果研究问题的效应量较大,用少数几个数据质量高、人群特征明确的站点,往往比纳入全部站点更可靠。


§9 资源与引用

9.1 官方资源

资源 内容 链接
PCORnet 官方网站 网络概览、CRN 列表、规模指标、最新动态 https://www.qianfanghub.com/ai-ready-dataset/pcornet/430
PCORI 官方网站 资助信息、治理结构、Phase 划分、研究资助公告 https://www.qianfanghub.com/ai-ready-dataset/pcornet/430
PCORnet Front Door 数据访问统一入口、Data Network Request 提交 https://www.qianfanghub.com/ai-ready-dataset/pcornet/430
PCORnet CDM 规范文档 CDM v7.0 完整表结构与字段定义 https://www.qianfanghub.com/ai-ready-dataset/pcornet/430
CDM GitHub 仓库 CDMFORUM、CDM-ERRATA、CDM-GUIDANCE 三个 issue tracker https://www.qianfanghub.com/ai-ready-dataset/pcornet/430
PCORnet CDM Data Quality Validation 文档 DAIMS 24 项检查的详细说明(2024-12) https://www.qianfanghub.com/ai-ready-dataset/pcornet/430
PopMedNet 开源项目 分布式查询平台源码与文档 https://www.qianfanghub.com/ai-ready-dataset/pcornet/430

9.2 关键文献

文献 出处 要点
Fleurence et al. JAMIA 2014;doi:10.1136/amiajnl-2014-002747;PMID 24821743;PMC4078292 PCORnet 首发论文,奠定网络设计理念与分布式架构
PCORnet 2020 论文 PMC7521354 CRN 累计覆盖约 8,000 万患者(2009-2018);HPRN 超过 6,000 万
PCORnet 十年回顾 PMC12783338 近 10 年累计超过 1 亿名患者;2023 年超过 4,700 万唯一患者至少一次就诊
Smith et al. JAMIA 26(11):1305-1313;doi:10.1093/jamia/ocz097 系统指出基于 EHR 而非理赔数据的局限性
Medical Care PCORnet 特刊 2026 年 2 月,19 篇同行评审开放获取文章 网络建设经验、数据使用教训、跨站点研究实践
PCORnet CDM Data Quality Validation 2024-12 DAIMS 24 项检查的权威说明

9.3 术语标准参考

领域 标准 用途
诊断编码 ICD-9-CM / ICD-10-CM DIAGNOSIS 表的 DX 字段
临床术语 SNOMED CT CONDITION 等表的临床概念编码
操作编码 CPT / HCPCS PROCEDURES 表的 PX 字段
检验编码 LOINC LAB_RESULT_CM 与 OBS_CLIN 的检验项目识别
药品编码 RxNorm PRESCRIBING、DISPENSING、MED_ADMIN
疫苗编码 CVX IMMUNIZATION
计量单位 UCUM 所有数值字段的单位
数据模型前身 FDA Mini-Sentinel CDM v4.0 PCORnet CDM 的设计起点

9.4 网络成员(2025 年)

CRN 覆盖特点
ADVANCE 多系统协作网络
GPC 区域健康系统协作
INSIGHT 多机构临床数据网络
OneFlorida+ 佛罗里达州及扩展区域
PaTH 多州学术医疗中心协作
PEDSnet 专注于儿童人群的儿科网络
REACHnet 含健康计划合作
STAR 规模最大的单一网络之一(2025 年 8,550,251 名唯一患者)

网络构成的演进:2013 年 12 月 PCORI 首轮资助为 11 个 CDRN + 18 个 PPRN;2017 年前后文献记录为 13 个 CDRN + 20 个 PPRN;当前整合为 8 个 CRN。部分网络(REACHnet、PaTH、OneFlorida+)包含健康计划合作,使数据能够覆盖理赔信息。

9.5 引用与使用建议

引用本文档时:说明引用的是 qianfanghub.com 的百科词条,并注明访问日期。由于 PCORnet 的网络构成与规模持续更新,建议在正式研究中直接引用 PCORI / PCORnet 官方页面与 CDM 规范文档作为一手来源。

引用规模数字时:必须同时说明年份与口径(“每年至少一次就诊"还是"累计有记录”)。不同的口径数字差异可达一倍以上,混用会导致严重失真。

引用 CDM 版本时:明确写出使用的版本号(如 v7.0)与规范文档日期。字段在不同版本间存在重命名与弃用,不写版本会导致可复现性问题。

9.6 相关数据集对照

数据集 与 PCORnet 的关系
FDA Mini-Sentinel CDM PCORnet CDM 的设计起点
OMOP CDM 另一个主流临床数据通用模型;PCORnet 部分早期站点曾基于 OMOP 或 i2b2
i2b2 早期 CDRN 中多个站点采用的基础架构
重症监护专用数据集 与 PCORnet 互补:PCORnet 覆盖广度大,重症数据集时间分辨率高

§10 声明卡

10.1 数据集身份声明

项目 内容
数据集全称 PCORnet Clinical Research Network(National Patient-Centered Clinical Research Network)
核心数据模型 PCORnet Common Data Model(CDM v7.0)
治理机构 Patient-Centered Outcomes Research Institute(PCORI)
协调机构 PCORnet Coordinating Center
架构类型 分布式研究网络(DRN)
数据位置 各参与站点本地防火墙内
数据模型许可 CC BY 4.0
数据许可 无统一开放许可,需逐项 DUA 授权

10.2 范围声明

包含:

  • 25 张核心表 + 3 张补充表定义的多站点 EHR 结构化数据
  • 人口学、就诊、诊断、操作、用药、生命体征、检验结果、患者报告结局、免疫接种、死亡
  • 美国范围内的多机构人群
  • 约 4,700 万名年度活跃患者(2023 年口径)

不包含:

  • 影像、波形、自由文本病历(非结构化模态不在 CDM 范围内)
  • 网络外就诊与用药(部分通过 EXTERNAL_MEDS 补偿)
  • 个体级原始数据的默认交付
  • 美国以外地区人群

10.3 使用限制声明

  1. 数据不出站点。 研究者默认获得的是站点级聚合结果,不是行级数据。
  2. 需通过官方流程。 所有数据访问必须经 PCORnet Front Door,签署 DUA,并通过 IRB 审查。
  3. 最小必要原则。 只能获取回答研究问题所必需的信息。
  4. 不可反推个体。 任何查询设计不得以识别个体为目的。
  5. 时间与费用预期。 可行性查询通常 6-8 周;数据查询为付费服务。
  6. 跨站点可比性需自行验证。 CDM 保证结构一致,不保证 ETL 决策一致。

10.4 数据质量声明

  • 数据质量按 DAIMS 24 项从四个维度评估:一致性、完整性、合理性、持久性。
  • 信息性缺失以 'NI' / 'UN' / 'OT' 编码,与空值语义不同。
  • 跨站点异质性为固有属性,需在分析中显式处理与报告。
  • 基于 EHR 的固有偏倚(就诊选择偏倚、系统外事件缺失、编码行为偏差、回顾性记录偏倚、检验开具偏倚、患者报告结局采集偏倚、死亡数据完整性低)在使用时必须声明。

10.5 纠错与口径声明

本文对两处常见但未经证实的说法作出纠正:

  1. “9,000 万+ 患者”:未在公开来源中获证实,本文不予采用。可核实的数字为"每年超过 4,700 万名患者至少一次就诊(2023 年)“与"近 10 年内有活动记录的累计超过 1 亿名患者”。
  2. “18 个临床数据研究网络 CDRN”:数字 18 对应的是 PPRN(患者驱动研究网络),不是 CDRN。2013 年首轮资助为 11 个 CDRN + 18 个 PPRN;当前为 8 个 CRN。

10.6 免责声明

本文档为数据集百科词条,用于帮助研究者理解 PCORnet 的结构、访问流程与使用要点。本文不构成任何数据访问的授权、代办或法律意见。 所有数据访问必须通过 PCORI 与 PCORnet 官方渠道,遵守适用的法律法规、数据使用协议与伦理审查要求。文中涉及的政策、规模与版本信息可能随时间变化,正式研究中应以官方一手文档为准。

本文不提供、不描述、不暗示任何绕过数据使用协议、隐私保护机制或伦理审查的方法。


§C 结构化数据(JSON-LD)

{
  "@context": "https://schema.org",
  "@graph": [
    {
      "@type": "MedicalWebPage",
      "@id": "https://www.qianfanghub.com/ai-ready-dataset/pcornet/430#webpage",
      "url": "https://www.qianfanghub.com/ai-ready-dataset/pcornet/430",
      "name": "PCORnet 临床研究网络",
      "description": "PCORnet 是由 PCORI 资助的美国国家患者中心临床研究网络,采用分布式数据网络架构,以 PCORnet CDM 通用数据模型统一多站点 EHR 数据,覆盖约 4,700 万名患者与 78 家健康系统。",
      "inLanguage": "zh-CN",
      "isPartOf": {
        "@type": "WebSite",
        "name": "qianfanghub 医疗数据集百科"
      },
      "about": {
        "@id": "https://www.qianfanghub.com/ai-ready-dataset/pcornet/430#dataset"
      },
      "author": {
        "@type": "Organization",
        "name": "qianfanghub.com 医疗数据集百科组"
      }
    },
    {
      "@type": "Dataset",
      "@id": "https://www.qianfanghub.com/ai-ready-dataset/pcornet/430#dataset",
      "name": "PCORnet Clinical Research Network",
      "alternateName": "National Patient-Centered Clinical Research Network",
      "description": "由 PCORI 资助的美国国家患者中心临床研究网络,采用分布式数据网络架构,通过 PCORnet CDM 通用数据模型(v7.0,25 张核心表)统一多站点电子健康记录,覆盖 8 个临床研究网络、78 家健康系统。",
      "creator": {
        "@type": "Organization",
        "name": "Patient-Centered Outcomes Research Institute (PCORI)",
        "url": "https://pcori.org/"
      },
      "publisher": {
        "@type": "Organization",
        "name": "PCORnet Coordinating Center"
      },
      "license": "https://creativecommons.org/licenses/by/4.0/",
      "isAccessibleForFree": false,
      "keywords": [
        "PCORnet",
        "PCORI",
        "EHR",
        "分布式数据网络",
        "通用数据模型",
        "CDM",
        "联邦式查询",
        "务实临床试验",
        "患者报告结局"
      ],
      "variableMeasured": [
        "人口学特征",
        "参保与覆盖期间",
        "就诊与住院",
        "诊断",
        "操作",
        "生命体征",
        "药品调配与处方",
        "实验室检验结果",
        "患者报告结局",
        "免疫接种",
        "死亡与死因"
      ],
      "spatialCoverage": {
        "@type": "Place",
        "name": "美国"
      },
      "temporalCoverage": "2009/..",
      "measurementTechnique": "多站点电子健康记录(EHR)分布式联邦查询",
      "citation": [
        "Fleurence et al., JAMIA 2014, doi:10.1136/amiajnl-2014-002747",
        "Smith et al., JAMIA 26(11):1305-1313, doi:10.1093/jamia/ocz097"
      ],
      "isBasedOn": {
        "@type": "Dataset",
        "name": "FDA Mini-Sentinel Common Data Model v4.0"
      }
    },
    {
      "@type": "cr:RecordSet",
      "@id": "https://www.qianfanghub.com/ai-ready-dataset/pcornet/430#recordset",
      "name": "PCORnet 分布式 EHR 记录集",
      "description": "分布于 8 个临床研究网络、78 家健康系统本地环境中的结构化电子健康记录集合,按 PCORnet CDM v7.0 的 25 张核心表组织。",
      "_ct_RecordSet": "分布式多站点电子健康记录(EHR)记录集",
      "_ct_patientCount": 47000000,
      "_ct_patientCountNote": "2023 年每年至少一次就诊的活跃患者数;近 10 年累计超过 1 亿",
      "_ct_timeSpan": "约 2009 年至今",
      "_ct_geographicCoverage": "美国",
      "_ct_dataModelVersion": "PCORnet CDM v7.0",
      "_ct_coreTableCount": 25,
      "_ct_networkCount": 8,
      "_ct_healthSystemCount": 78
    },
    {
      "@type": "rai:dataLimitations",
      "@id": "https://www.qianfanghub.com/ai-ready-dataset/pcornet/430#limitations",
      "description": "PCORnet 作为分布式 EHR 网络的固有数据限制。",
      "rai:limitation": [
        "数据留在各站点防火墙内,研究者无法获得原始行级数据,仅能获得站点级聚合结果",
        "各站点 ETL 实现差异导致同一概念在不同站点的可比性下降",
        "信息性缺失以 'NI' / 'UN' / 'OT' 编码,容易被误读为真实阴性",
        "基于 EHR 而非理赔数据,存在就诊选择偏倚与回顾性记录偏倚",
        "网络外就诊、检查与用药不被记录,存在系统性缺口",
        "检验数据仅在被开具时存在,缺失与疾病风险相关",
        "患者报告结局的采集人群非随机",
        "死亡数据依赖外部索引匹配,完整性与时效性低于临床数据",
        "编码行为受报销政策与机构规范影响,不等于临床真实"
      ]
    }
  ]
}

文档结束

本文档为 qianfanghub.com 医疗数据集百科词条,路径 https://www.qianfanghub.com/ai-ready-dataset/pcornet/430。所有数据访问请通过 PCORnet Front Door 官方流程。


相关数据集导航

以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:

  • mimic-br — 共享标签:电子健康记录 / 临床电子病历 / 重症监护
  • mc-med — 共享标签:电子健康记录 / 临床电子病历 / 重症监护
  • virus-registry — 共享标签:电子健康记录 / 临床电子病历 / 重症监护
  • outcomerea — 共享标签:电子健康记录 / 临床电子病历 / 重症监护
  • pedsnet — 共享标签:电子健康记录 / 临床电子病历 / 重症监护
  • truveta — 共享标签:电子健康记录 / 临床电子病历 / 重症监护
  • zhejiang-ehr-critical-care — 共享标签:电子健康记录 / 重症监护
  • nwicu — 共享标签:电子健康记录 / 临床电子病历 / 重症监护
  • inspire — 共享标签:电子健康记录 / 临床电子病历 / 重症监护
  • cub-rea — 共享标签:电子健康记录 / 临床电子病历 / 重症监护

导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

返回 AI-Ready 数据集