信息速览

FAERS — 全球最大自发药物警戒数据库 AI-Ready Wikipedia
INFOBOX
| 数据集名称 | FAERS(FDA Adverse Event Reporting System) |
| 英文全称 | FDA Adverse Event Reporting System |
| 别名/简称 | FAERS、FDA AERS、AERS(2012-09 前为 Legacy AERS / LAERS) |
| 疾病分类 | 上市后药品不良事件与用药错误(非单病种;MedDRA PT 编码覆盖全疾病谱,如急性肾损伤 8B6Z、肝损伤 5C58、间质性肺病 CB05.1 等) |
| SNOMED CT | 药物不良反应 62014003(Adverse reaction to drug)/ 药物监测(Pharmacovigilance)等,见 §2.2 |
| 数据模态 | 结构化自发不良事件报告(ICSR):患者人口学 / 药品 / MedDRA 不良事件 / 结局 / 来源 / 治疗史 |
| AI 任务类型 | 药物警戒信号检测(SDR)、报告失衡分析(ROR/PRR/BCPNN/MGPS)、药物-不良反应关系挖掘、罕见不良反应发现、命名实体抽取与文本分类 |
| 样本总数 | 累计报告约 3,282 万条(FDA AEMS/FAERS 仪表盘,2026-03-11,含重复与随访未去重);公开季度文件自 2004Q1 起非累计发布 |
| 数据大小 | 单季 ASCII 包数十 MB(2014Q2 约 23.7 MB、XML 包约 37.2 MB,随年代增大) |
| 数据格式 | ASCII($ 分隔)/ XML(ICH E2B)/ openFDA JSON API |
| 许可证 | Public Domain(美国政府作品);公开数据免费下载、免注册、无访问限制 |
| 访问级别 | 开放(无需注册/申请/DUA) |
| DUO 标签 | NRES(无限制) |
| 语言 | 英文(MedDRA 术语、药品名等) |
| 首发日期 | AERS 1997 上线;公开季度数据自 2004Q1 起;FAERS 2012-09-10 部署、2012Q4 首包 |
| 最后更新 | 持续更新(截至 2026-03-11 仪表盘累计约 3,282 万条;自 2025-08 起仪表盘每日实时更新) |
| 发布机构 | U.S. FDA(Center for Drug Evaluation and Research, CDER;Center for Biologics Evaluation and Research, CBER) |
| 官方主页 | https://fis.fda.gov/extensions/FPD-QDE-FAERS/FPD-QDE-FAERS.html |
| 下载地址 | https://fis.fda.gov/extensions/FPD-QDE-FAERS/FPD-QDE-FAERS.html |
| DOI | 无官方数据集 DOI(见 openFDA / NBER 镜像的 DOI 引用) |
| 引用次数 | 相关方法学与综述引用数以千计(如 FAERS 核心综述被广泛引用,具体以 Google Scholar 为准,截至 2026-09) |
| AI 就绪度评分 | ⭐⭐⭐(3/5)— 公开免费、七表结构与文档清晰,但无官方去重/标准化脚本、季度文件非累计需自行合并、药品名需清洗,官方不提供划分 |
| 页面状态 | published |
§0 E-E-A-T 信任声明与免责声明
医学审核者:千方病案医学编辑部交叉审核:§2 医学背景(MedDRA 术语体系、药物警戒临床任务、报告口径与人群结构)、§7 偏倚分析。
数据工程审核者:千方病案医学编辑部交叉审核:§4 DAIMS 数据字典(七表 PRIMARYID 关联、PRIMARYID/CASEID 去重协议)、§5 数据划分策略、§6 预处理 Pipeline 和坑点。
审核日期:2026-09-05
审核方式:交叉审核
利益冲突声明:千方病案医数集与美国 FDA 及任何数据再分发方无商业利益关联。本页面不销售 FAERS 数据集本身,仅提供 AI 就绪指南与学术信息服务。编辑者未接受 FDA 的任何形式资助。
医疗免责声明:本页面提供的医学信息仅供研究和教育目的,不构成医疗建议、诊断或治疗方案。数据集的医学描述基于公开发表的文献,未经逐一临床验证。任何基于该数据集训练的 AI 模型在应用于临床决策前,必须经过独立的临床验证和监管审批。FAERS 报告本身不代表事件由药品所致,患者不应依据报告停止或更改用药。
技术免责声明:本页面的代码示例、预处理建议和基准性能数据基于公开资料整理,不保证在特定环境下的准确性和适用性。使用者应自行验证代码安全性和数据预处理流程的正确性。千方病案医数集不对因使用本页面信息而导致的任何直接或间接损失承担责任。
数据使用合规:使用本页面描述的数据集前,请务必阅读并遵守数据集原始许可协议。FAERS 公开季度数据文件由美国 FDA 发布,属于美国政府作品,供公众免费下载使用;去标识化后不含可识别个人身份的信息。DUO 标签仅供参考,具体使用限制以数据集官方说明为准。
§1 数据集概览
§1.0 30 秒速览
FAERS 是美国 FDA 维护的"药品不良事件报告库"——全世界的医生、患者、药企在发现某个药品疑似导致不良反应后,把个案报到 FDA,这些报告汇总起来就成了 FAERS。它是全球规模最大的自发报告数据库之一:FDA 仪表盘累计显示约 3,282 万条报告(截至 2026-03,含重复与随访),近年每年新增超过两百万条,数据的公开季度文件从 2004 年开始免费发布。
它的价值在于"广度":临床试验最多几千人、随访几年,捕捉不到罕见不良反应;而 FAERS 汇集了海量真实世界的用药个案,能最先浮现"某药与某罕见事件相关"的统计信号。FDA 用它在上市后筛出新的安全信号,并据此更新说明书、发布警告甚至撤市。
你可以用它来:做药物警戒信号挖掘(某药有没有被不成比例地报出某类事件)、检索某药某事件的历史报告数、研究真实世界的用药安全画像,或作为教学库带学生理解自发报告数据的局限。务必牢记:它是"信号源"而非"因果证据"——报告多不等于药品导致事件。
§1.1 摘要
FAERS 是美国 FDA 面向已上市药品与治疗性生物制品的上市后安全监测数据库,其前身 AERS 于 1997 年上线并取代自发报告系统(SRS,1969 年建立),2012-09-10 升级更名为 FAERS(此前数据归为 Legacy AERS / LAERS)[FDA Quarterly README]。数据库接收四类来源的个体病例安全报告(ICSR):企业依法强制上报(21 CFR 314/600)、医生与药师等专业人员自愿上报、患者/消费者直接上报、以及其他报告人;自愿上报主要通过 MedWatch 计划(FDA 3500/3500B 表格)或 Safety Reporting Portal 完成,企业则以 ICH E2B 电子格式批量传输。不良事件与用药错误统一用 MedDRA 术语编码,报告结构遵循 ICH E2B 国际标准。
自 2004Q1 起 FDA 以非累计(当季新增)季度数据包公开全部报告,ASCII 包含 DEMO/DRUG/REAC/OUTC/RPSR/THER/INDI 七个以 PRIMARYID 关联的关系文件;2012Q4 起另提供 ICH E2B 格式的 XML 包。数据可经 FAERS Public Dashboard(2017-09-28 上线,2025-08 起每日更新)可视化查询、经季度文件下载做批量分析,或经 openFDA API 以 JSON 拉取。FAERS 正并入新一代 FDA AEMS(Adverse Event Monitoring System),公开下载页已更名 “AEMS Latest Quarterly Data Files” 但历史关系结构保持不变 [FDA AEMS]。
核心用途是上市后安全信号检测:以报告失衡分析(ROR、PRR、BCPNN、MGPS 等)识别某药-某事件被不成比例报告的统计信号,再由临床审评员结合病例细节与流行病学证据判定是否构成风险。FAERS 因缺乏暴露总人数、无法证明因果、存在重复与低报等固有局限,官方明确声明其"不能用于计算发生率,也不构成药物间风险排序依据" [FDA FAQ]。
§1.2 战略价值分析
范式开创维度:FAERS 是全球自发报告系统开放化的标杆。1997 年前后 FDA 首次将分散的安全数据整合为统一可检索的电子库并支持电子 ICSR 上报,2004 年起以季度数据包向公众开放全部去标识化报告,2017 年进一步推出免数据库技能的 Public Dashboard,2025 年升级为每日实时更新并逐步并入 AEMS。这一"法规强制 + 自愿 + 全量公开 + 结构化术语 + 多入口获取"的组合,成为各国药品不良反应监测系统与上市后真实世界证据研究参照的模板 [FDA/PRNewswire]。
研究生态维度:围绕 FAERS 形成了药物警戒方法学的完整闭环。全球每年有大量论文以 FAERS 为样本做信号检测,常用的失衡分析算法(ROR、PRR、Bayesian BCPNN、MGPS)均有 FAERS 上的成熟实现与判读阈值;去重协议(按 CASEID+FDA_DT+PRIMARYID 保留最新版本、自 2019Q1 起剔除季度 Deleted 列表)成为所有下游分析的先决步骤。社区提供了规范化镜像(NBER 的 SAS/Stata/CSV、RxNorm 标准化工作等),使该库成为教学与复现的标准依托 [NBER][MDPI]。
临床监管影响维度:FAERS 数据直接支撑 FDA 的上市后监管决策——临床审评员据此发现新安全信号、评估企业上报合规性、回应外部问询;信号经确认后可触发说明书更新、用药限制、REMS、安全沟通,极端情况可致撤市。多个历史性安全行动(如含 SSRIs 儿科自杀风险黑框警告等)都与 FAERS 信号的临床解释相关。数据价值不止于预测,而是融入了真实的公共卫生决策流程 [FDA AEMS][IntuitionLabs]。
§1.3 同类数据集横向对比
| 数据集 | 机构/地区 | 模态与规模 | 标注 | 相对 FAERS 的差异化 |
|---|---|---|---|---|
| FAERS | 美国 FDA | 自发 ICSR,累计约 3,282 万条报告(2026-03,含重复);公开 2004Q1 起 | MedDRA PT/SOC 编码、role_cod、结局 | 免费开放、覆盖全球、最常用于失衡信号检测 |
| AERS(Legacy) | 美国 FDA | FAERS 前身,2004Q1-2012Q3 数据 | 同上 | 字段较少;2012Q4 后并入 FAERS 结构 |
| AEMS(新版) | 美国 FDA | 每日更新的 FAERS 继任平台,跨产品类别 | 含 AI 脱敏与数字化工具 | 取代 FAERS 仪表盘命名;季度文件结构延续 |
| VAERS | 美国 CDC/FDA | 疫苗不良事件自发报告 | MedDRA | 专注疫苗;与 FAERS 药品口径分离 |
| CAERS / MAUDE | 美国 FDA | 化妆品/膳食补充剂 / 医疗器械 | 各有术语 | 不同产品类别,监管体系平行 |
| EudraVigilance | 欧盟 EMA | 欧洲自发 ICSR,覆盖 EEA | MedDRA / WHO | 需注册 + 合规审核,公开程度低于 FAERS |
| VigiBase / 黄卡(MHRA) | WHO 乌普萨拉 / 英国 MHRA | 各国自发报告汇聚 | WHO-ART / MedDRA | 侧重跨国汇聚与早期预警 |
| openFDA 子库 | 美国 FDA | FAERS 的 JSON API 镜像(2004 起,季度更新) | 同 FAERS | 便捷程序化访问,但更新滞后 |
§1.4 版本演进时间轴
| 年份/季度 | 里程碑 | 数据含义 |
|---|---|---|
| 1969 | FDA 建立自发报告系统(SRS) | 系统性上市后不良事件采集之始 |
| 1993 | MedWatch 计划启动 | 统一自愿上报表格与渠道 |
| 1997 | AERS 上线,取代 SRS | 电子 ICSR 上报、ICH E2B 结构、MedDRA 编码 |
| 2004Q1 | FDA 开始季度公开 AERS 数据 | 公开数据包自此起连续可回溯 |
| 2004-09 | 公开文件用 “LAERS” 指称 Legacy AERS | 与 FAERS 分界 |
| 2012-08-27/09-10 | LAERS 停机、FAERS 部署 | FAERS 首包 2012Q4 起;含 2012-08-28 至 12-31 |
| 2014Q3 | DRUG 文件新增 prod_ai 字段 | 独立活性成分列,便于标准化聚合 |
| 2015 | 企业电子上报最终规则生效 | 全面告别纸质 3500A |
| 2017-09-28 | FAERS Public Dashboard 上线 | 公众免数据库技能可视化查询 |
| 2019Q1 | 季度包新增 Deleted 删除病例列表 | 支持按 CASEID 剔除撤回报告 |
| 2024-2026 | 转向 ICH E2B(R3);并入 AEMS | 跨产品类别统一监测;仪表盘每日更新 |
§1.5 典型 AI 应用场景
- 失衡信号检测(disproportionality analysis):对某药计算报告失衡度量(ROR/PRR/IC/EBGM)以识别潜在药物-不良反应关联,是 FAERS 最主流的 AI/统计任务。
- 药品类效应与亚群安全画像:对某药类(如 BRAF/MEK 抑制剂、免疫检查点抑制剂)在特定适应症人群上刻画其心脏毒性、间质性肺病等信号分布。
- 罕见/未标记不良反应发现:在临床试验样本不足时,利用海量真实报告辅助识别说明书外的不良事件并生成研究假设。
- 命名实体与文本挖掘:处理非结构化 drugname(商品名/通用名/错拼)、将报告叙述映射到标准化药品与 MedDRA 术语(RxNorm/WHODrug 标准化)。
- 重复病例识别与数据清洗:自动化 FDA 去重协议、跨季度拼接与重复报告剔除,为一切下游分析提供干净病例集合。
§2 医学背景
§2.1 ICD-11 疾病分类锚定
FAERS 不是单病种库,而是"药品 + 不良事件"对的报告集合。不良事件本身以 MedDRA 术语编码(见 §2.2);本表仅将若干高频"事件类型/结局"锚定到 ICD-11,方便与临床诊断口径衔接(报告含多事件、无单一主诊断):
| FAERS 常见事件(MedDRA PT 示例) | 中文 | ICD-11 对应 | 临床意义 |
|---|---|---|---|
| Acute renal failure | 急性肾衰竭 | 8B6Z 急性肾损伤 | 常见严重结局,可用于信号筛选 |
| Drug-induced liver injury / Hepatotoxicity | 药物性肝损伤 | 5C58 药物性肝损伤 | FAERS 重点监测的一类不良反应 |
| Interstitial lung disease | 间质性肺病 | CB05.1 特发性间质性肺炎 | 免疫/抗肿瘤药物重点信号 |
| Myocardial infarction | 心肌梗死 | BA41 急性心肌梗死 | 心血管安全性信号 |
| Stevens-Johnson syndrome / Toxic epidermal necrolysis | SJS/TEN | EH46 表皮剥脱性疾病 | 说明书重点警示、上市前后罕见事件 |
| Aplastic anaemia | 再生障碍性贫血 | 3A70.0 再生障碍性贫血 | 血毒性罕见信号示例 |
| Anaphylactic reaction | 过敏性休克 | 4A84.9 过敏反应 | 常见严重免疫介导事件 |
| Medication error | 用药错误 | PL11 药物使用相关的伤害(编码条目) | 用药错误类报告 |
§2.2 MedDRA 与 SNOMED CT 映射
FAERS 不良事件使用 MedDRA(Medical Dictionary for Regulatory Activities) 编码——多级层次结构(SOC→HLGT→HLT→PT→LLT),公开文件主要在 PT(Preferred Term) 层呈现。以下是常见事件与编码体系的衔接:
| 临床场景 | FAERS 用 MedDRA PT | MedDRA SOC(系统器官分类) | SNOMED CT | SNOMED CT 术语 |
|---|---|---|---|---|
| 药物不良反应(总体概念) | —(报告整体) | — | 62014003 | Adverse reaction to drug (disorder) |
| 急性肾衰竭 | Acute renal failure | Renal and urinary disorders | 14669001 | Acute renal failure syndrome (disorder) |
| 肝损伤 | Drug-induced liver injury | Hepatobiliary disorders | 43596004 | Drug-induced liver injury (disorder) |
| 间质性肺病 | Interstitial lung disease | Respiratory, thoracic disorders | 65087002 | Interstitial pulmonary disease (disorder) |
| 过敏性休克 | Anaphylactic reaction | Immune system disorders | 39579001 | Anaphylaxis (disorder) |
| 药物监测/药物警戒 | — | — | 308377009 / 420134006 | Drug monitoring / Adverse drug reaction surveillance |
| 药物治疗(概念) | — | — | 41896000 | Drug therapy (procedure) |
§2.3 疾病简介与流行病学意义
药物不良反应(ADR)是公共卫生的重要负担——上市前临床试验受样本量小、人群单一、疗程短的限制,难以发现罕见或迟发型不良事件。FAERS 的作用正是弥补这一"上市前盲区":通过汇聚海量真实世界的自发报告,率先浮现说明书外或罕见的药品安全信号。FAERS 特别擅长发现的是低背景率但严重的上市后不良事件——这类事件在普通人群中本就罕见,因而只要积累足够报告,"某药被不成比例报告该类事件"就会形成可探测的统计信号。
需要从流行病学视角理解 FAERS 的价值边界:
- 它是信号源,不是分母完备的队列:FAERS 只记录"被报告的事件",不含"暴露总人数",因此无法计算真实发生率或绝对风险。
- 报告量受多种非医学因素驱动:新药上市早期上报通常偏多(即所谓 Weber 效应,随上市时间推移上报回落)、媒体与文献关注会推高某药某事件的上报、厂商强制上报以严重事件为主而消费者自愿上报含更多非严重事件——这些都会扭曲报告量分布。
- 对时间错位事件不敏感:迟发起效/迟发被发现的事件(如骨质疏松、癌症)与背景人群常见事件(如老年人心梗)在自发报告中的信号分辨力都较差,FDA 官方文档对此有明确警示。
因此 FAERS 上"报告数的多少"不能解读为"风险高低",这是使用本数据集的一切分析都必须内化的第一原则 [FDA QDE 说明][ScienceInsights]。
FAERS 历史上重点监测的典型上市后事件类型(低背景率、常为说明书外):
| 事件类别 | MedDRA PT 示例 | 监测意义 |
|---|---|---|
| 严重皮肤反应 | Stevens-Johnson syndrome、Toxic epidermal necrolysis | 罕见但危及生命,上市前常漏检 |
| 血液毒性 | Aplastic anaemia、Agranulocytosis | 罕见严重事件,低背景率 |
| 肝毒性 | Drug-induced liver injury | 药物性肝损伤是撤市主因之一 |
| 心律失常 | Torsade de pointes、QT prolongation | 心电学风险信号 |
| 间质性肺病 | Interstitial lung disease | 抗肿瘤/免疫治疗重点信号 |
| 心脏毒性 | Myocardial infarction、Heart failure | 心血管安全性 |
§2.4 临床任务定义
| AI/统计任务 | 临床定义 | 常用操作化 | FAERS 中的实现要点 |
|---|---|---|---|
| 失衡信号检测(SDR) | 识别某药-事件组合被不成比例报告的信号 | ROR/PRR/BCPNN/MGPS 阈值判读 | 需先按 FDA 协议去重;以 role_cod=PS(主要疑似)与 MedDRA PT 计数 |
| 药物-不良反应关联发现 | 生成"某药可能导致某事件"的可检验假设 | 失衡度量 + 病例回顾 | 须结合 INDI(适应症)与临床背景,避免适应症混淆 |
| 用药错误监测 | 识别给药差错类事件模式 | 用药错误相关 MedDRA PT | 用药错误报告与 ADR 报告在 REAC 中并置 |
| 罕见/未标记事件侦测 | 发现说明书外罕见不良事件 | 背景率低事件的重点筛查 | 文献中如 SJS/TEN、肝毒性等 |
| 药品名与事件标准化 | 归一化非结构化 drugname 与叙述 | RxNorm/WHODrug 映射、MedDRA 编码 | 商品名/通用名/错拼多形态,需清洗(见 §6.5 坑点) |
§2.5 患者人群与报告结构
| 维度 | FAERS 报告口径(来源:AEMS 仪表盘全库分析,访问 2026-03-11) |
|---|---|
| 报告量 | 累计约 32,815,201 条(含重复与随访,未去重) |
| 严重报告(除死亡) | 约 54.6%(17,929,119) |
| 死亡结局 | 约 8.8%(2,899,382) |
| 非严重报告 | 约 36.5%(11,986,700) |
| 性别 | 女性约 52.7%、男性约 34.9%、未指明约 12.4% |
| 报告来源 | 医疗专业人员约 48.8%、消费者/非医疗约 48%、未指明约 3.1% |
| 地区 | 美国本土约 68.3%、境外约 31.6% |
| 报告人类型(历史全库) | 消费者约 45.6%、医师约 22.0%、其他医疗专业约 19.7% |
注:AEMS 仪表盘含重复与随访报告;经 FDA 去重后唯一病例数显著小于报告总数(如 2004-2024Q4 分析中去重后约 1,861 万唯一病例) [Cureus][PLoS]。
§2.6 金标准/参考标准
| 划分/标注对象 | 标注方式 | 标注者 | 性质 |
|---|---|---|---|
| 不良事件术语 | 报告叙述映射到 MedDRA PT/SOC(人工或辅助工具编码) | FDA 编码员/厂商(ICH E2B) | 术语标准化,非"因果标签" |
| 报告为初始/随访 | I_F_COD 字段 | 提交方(厂商/MedWatch) | 管理性标记 |
| 药品角色(可疑/并用) | role_cod:PS/SS/C/I | 报告者/提交方 | 决定信号统计口径 |
| 结局(死亡/住院等) | OUTC 表 outc_cod | 报告者 | 事件严重度标记 |
| 病例唯一性 | CASEID(跨随访版本不变) | 系统/厂商 | 去重主键 |
| "真实"药物-事件因果关系 | 无此类标签 | 无 | FAERS 报告不携带因果判定,必须外部证据确认 |
关键提示:FAERS 不含"该事件确由该药所致"的金标准标签。失衡信号只是统计信号,FDA 与学界均以独立流行病学研究(如 Sentinel、队列/病例对照)作为因果确认的参考标准 [FDA FAQ][ScienceInsights]。
§3 数据集规格
§3.0 版本抉择矩阵
FAERS 有多个入口与历史阶段,选型取决于你的分析需求:
| 你的需求 | 推荐版本/入口 | 覆盖范围/大小 | 理由 |
|---|---|---|---|
| 需要完整历史 + 批量去重与建模 | FAERS ASCII 季度包(含 LAERS 2004Q1-2012Q3) | 2004Q1 至今,每季一个 zip | 唯一能回溯至 2004、字段与格式一致的批量文件 |
| 需要自 2012Q4 起的 ICH E2B 原生结构 | FAERS XML 季度包 | 2012Q4 至今 | 层级嵌套贴近 E2B,脚本解析结构固定 |
| 只做小样本查询/教学/快速了解 | FAERS Public Dashboard / AEMS Dashboard | 1969 至今,图形化 | 无需数据库技能,2025-08 起每日更新 |
| 做程序化 API 拉取、轻应用原型 | openFDA FAERS API | 2004 起、季度更新、JSON | 免建关系库,直接 JSON;更新滞后于官方季度文件 |
| 用 SAS/Stata/CSV 直接分析 | NBER 镜像(FAERS/LAERS) | 2004Q1 起 | 免费转好的 SAS/Stata/CSV,免 $ 分隔解析 |
§3.1 模态详细说明
FAERS 是结构化自发不良事件报告(ICSR),不是时序信号或影像。每个季度 ASCII 包包含七个相互关联的关系文件,每份报告(PRIMARYID)在 DEMO 中占一行,并可在其他表中对应零到多行:
| 文件 | 内容 | 粒度 |
|---|---|---|
| DEMO | 患者人口学 + 报告管理信息(PRIMARYID/CASEID/事件日/年龄/性别/报告国) | 每报告一行 |
| DRUG | 报告中每种药物的信息(药名/活性成分/角色/剂型/途径/剂量/用药时间) | 每药一行 |
| REAC | 报告的每一条 MedDRA 不良事件(PT 层) | 每事件一行 |
| OUTC | 每报告的患者结局(死亡/住院/危及生命/致残等,0+ 行) | 每结局一行 |
| RPSR | 报告的来源(医师/药师/消费者等,0+ 行) | 每来源一行 |
| THER | 每种已报告药物的治疗起止日期(0+ 行/药/报告) | 每疗程一行 |
| INDI | 每种已报告药物的适应症(MedDRA PT,0+ 行/药) | 每适应症一行 |
§3.2 样本量拆分
| 口径 | 数量 | 说明 |
|---|---|---|
| 累计报告(AEMS 仪表盘) | 约 32,815,201 条 | 含重复与随访,访问 2026-03-11 |
| 公开季度范围 | 2004Q1 起,非累计 | LAERS 2004Q1-2012Q3、FAERS 2012Q4 至今 |
| 去重后唯一病例(2004-2024Q4 示例分析) | 约 18,613,992 | 经 FDA 去重协议剔除重复随访与撤回报告 |
| 对应不良事件记录数(同分析) | 55,357,463 | 一病例可含多事件 |
| 近年年度新增 | 约 210-236 万条/年 | 2019-2024 年 210-236 万区间(仪表盘按接收年) |
§3.3 数据格式详情
| 格式 | 说明 | 自 | 备注 |
|---|---|---|---|
| ASCII | $ 分隔的 .TXT,七个关系文件 + 说明/统计文件 | 2004Q1(LAERS 同构) | 大文件超 Excel 行上限,需 SAS/关系库 |
| XML | 单文件 ADRyyQq.XML,ICH E2B 层级 | 2012Q4 | 命名如 ADR12Q4,嵌套病例/药/事件 |
| JSON(openFDA) | 便捷 API 输出 | 2004 起 | 开发者友好,季度更新 |
| Deleted 列表 | yyQqDeletedCases 文本 | 2019Q1 | 撤回病例 CASEID,供剔除 |
§3.3b 新旧数据包差异(LAERS vs FAERS ASCII)
FAERS 公开文件经历了从 Legacy AERS 到 FAERS 的迁移,两代 ASCII 包存在细微但重要的差异:
| 维度 | LAERS(2004Q1-2012Q3) | FAERS(2012Q4 至今) |
|---|---|---|
| 命名 | 前缀如 DEMOyyQq(如 DEMO04Q1) | 同构(DEMO12Q4 起);压缩包名 FAERS_ASCII_YYYYQq.zip |
| 统计文件 | SIZE.TXT + STAT.TXT 两文件 | 演化为每数据文件对应(DEMO/DRUG/… 各自 PDF/文本),含空值统计 |
| 数据文件数 | 2 说明 + 9 数据 | 2 说明 + 14 数据(新版扩容) |
| 关联主键 | ISR(早期文档)/ primaryid | primaryid(正式统一) |
| prod_ai 字段 | 无 | 2014Q3 起加入 DRUG 文件 |
| XML 形式 | 月度增量文件 | 2012Q4 起单季度整包 ADRyyQq.XML |
| Deleted 列表 | 无 | 2019Q1 起新增 |
注:两代文件核心七个 TXT(DEMO/DRUG/REAC/OUTC/RPSR/THER/INDI)名称与结构一致,合并分析时主要须处理 primaryid 统一与 prod_ai 断层 [pharmahub 字典][上海医药综述]。
§3.4 存储大小
单季度 ASCII 压缩包规模随年代增长:2012Q4 约 26.3 MB、2014Q1 约 27.9 MB、2014Q2 约 23.7 MB(对应年份量级);XML 包通常更大(2014Q2 XML 约 37.2 MB)[NBER]。随年度报告量从约百万条增至两百万条级,近年单季包显著更大。全历史(2004 至今、80+ 季度)解压后合计可达数 GB 量级;自建全库数据库(MySQL/PostgreSQL/SQLite)建议预留充足磁盘并建 PRIMARYID/CASEID 索引。openFDA/NBER 镜像可只拉所需年份,减少传输。对于仅需单一目标药失衡分析的研究者,通常无需全量下载,可按需选取目标药相关季度。
§3.5 标注方式
FAERS 的"标注"是编码与分类,而非人工语义金标准:
| 标注类型 | 机制 |
|---|---|
| MedDRA 编码 | FDA 编码员或厂商将报告叙述映射到 MedDRA PT/LLT(ICH E2B 提交,辅助编码工具) |
| 活性成分标准化 | DRUG 的 prod_ai 字段(2014Q3 起)由 FAERS Product Dictionary 规范到有效商品名/活性成分 |
| 初始/随访标记 | I_F_COD 由提交方按报告版本给出 |
| 结局分类 | 报告者对严重事件勾选结局(死亡/住院/危及生命等) |
| 药品角色 | 报告者自评 role_cod(PS/SS/C/I) |
§3.6 标注者资质与一致性
不良事件的 MedDRA 编码由 FDA 临床审评体系与厂商依 ICH E2B 提交,术语维护方为 MedDRA MSSO(MedDRA 每半年于 3 月/9 月更新,术语随版本迁移需重映射);药品活性成分经 FAERS Product Dictionary 规范化。一致性风险点在于:自发报告叙述质量参差、厂商/MedWatch 双通道可能导致同一病例重复编码、药品名自由文本(商品名/通用名/错拼)缺乏统一约束——这使"报告后的一致性"高度依赖下游清洗(RxNorm/WHODrug 映射)[FDA 字典][MDPI]。
§3.7 采集时间范围
自发报告自 1969 年(SRS)起持续采集;公开结构化季度文件自 2004Q1 起连续提供,覆盖 LAERS(2004Q1-2012Q3)与 FAERS(2012Q4 至今)两个阶段。仪表盘可视化可追溯到 1968/1969 年的早期数据。报告接收后到汇入季度数据包存在数月滞后;自 2025-08 起仪表盘改为每日更新(AEMS)[IntuitionLabs][NBER]。
§3.8 地域覆盖
FAERS 覆盖全球:美国本土报告约占 68.3%(来源 AEMS 全库分析,2026-03),境外厂商按法规向 FDA 提交的报告约占 31.6%,报告国字段记录于 DEMO。相比单一国家自发库,FAERS 的跨国提交使其成为跨国失衡分析的常用库,但美国口径的主导地位意味着解读需注意地区报告行为差异 [Cureus]。
§3.9 采集与编码体系规格
FAERS 的"采集设备"是法规与上报渠道体系而非硬件:自愿上报经 MedWatch 3500/3500B 与 Safety Reporting Portal;企业强制上报经 FDA Electronic Submissions Gateway(ICH E2B(R2)→E2B(R3))。术语规范使用 MedDRA(事件/适应症)、FAERS Product Dictionary(药品名/活性成分)、WHO Drug Dictionary(厂商映射)。报告进入 FDA 后经 CDER/CBER 临床审评体系评估并归档;公开季度文件是系统内全部报告的去标识化导出,非抽样。
§3.10 深度溯源链
报告形成链路:患者在用药后出现事件 → 上报人(消费者/医务人员经 MedWatch,或厂商接报后依法提交)→ 厂商以 ICH E2B 电子或纸质 3500A 向 FDA 报送 → FDA 接收(MedWatch / 电子网关)→ 结构化编码(MedDRA PT/SOC、Product Dictionary 活性成分)→ 进入 FAERS 交易库并按 CASEID/PRIMARYID 管理随访与撤回 → 按季度非累计导出 ASCII/XML 去标识化数据包并发布于 QDE 下载页 → 镜像(openFDA JSON / NBER SAS/Stata/CSV)二次分发。任何环节(报告缺项、编码版本、重复上报、删除)都影响下游解读。
§4 数据结构详解
§4.0 目录结构预览
FAERS_ASCII_2024Q4.zip # 单季 ASCII 压缩包(非累计,含当季)
├── ASCII/
│ ├── DEMO24Q4.TXT # 患者人口学与管理信息(每报告一行)——主键表
│ ├── DRUG24Q4.TXT # 药品/生物制品信息(每药一行)
│ ├── REAC24Q4.TXT # MedDRA 不良事件(每事件一行,PT 层)
│ ├── OUTC24Q4.TXT # 患者结局(0+ 行)
│ ├── RPSR24Q4.TXT # 报告来源(0+ 行)
│ ├── THER24Q4.TXT # 药物疗法起止日期(0+ 行/药)
│ └── INDI24Q4.TXT # 药物适应症(MedDRA PT,0+ 行/药)
├── ASC_NTS.DOC # 数据文件字段说明(数据字典)
└── README.DOC # 压缩包一般说明与命名规则
FAERS_XML_2024Q4.zip # 单季 XML(ICH E2B)
└── ADR24Q4.XML # 嵌套层级单文件
# 自 2019Q1 起附删除列表:
# ASCII/xxx2024Q4DeletedCases.TXT —— 当季撤回报告的 CASEID
§4.1 DAIMS 标准化字段描述表
下表以核心表 DEMO 与 DRUG/REAC 为代表字段(FAERS Data Dictionary 口径):
| 字段名 | 类型 | 说明 | 示例值 | AI 用途 | 观测误差 | 缺失编码 | 取值范围 |
|---|---|---|---|---|---|---|---|
| PRIMARYID | 整数 | 报告唯一号(CASEID+版本拼接),七表关联主键 | 31234561 | 关联键/去重键 | 无(系统生成) | 关键字段,不应缺失 | 任意正数 |
| CASEID | 整数 | 病例号(随访共享同一 CASEID) | 3123456 | 去重/病例级聚合 | 无 | 关键字段 | 任意正数 |
| CASEVERSION | 整数 | 病例版本(初始=1,随访递增) | 2 | 选择最新版本 | 无 | 有初始版本 | ≥1 |
| I_F_COD | 文本 | 初始/随访标记 | I / F | 过滤初次报告 | 由厂商标注 | 罕见 | I=Initial, F=Follow-up |
| EVENT_DT | 日期 | 事件发生日期(YYYYMMDD,缺时给部分) | 20240115 | 时间窗/时序 | 报告自述,可能不精确 | 常部分缺失 | 日期,允许部分 |
| AGE / SEX | 数值/文本 | 患者年龄(年)与性别 | 65 / F | 亚组分析 | 报告自述,可能缺失 | 常见缺失 | 年龄 0-120+;性别 F/M/U |
| REPORTER_COUNTRY | 文本 | 报告国 | US | 地域偏倚分层 | 自报 | 少见 | 国别码 |
| DRUGNAME | 文本 | 报告药名(自由文本) | “Kisqali”/“ribociclib” | 药名标准化 | 商品名/通用名/错拼并存 | 罕见 | 非结构化 |
| PROD_AI | 文本 | 标准化活性成分(2014Q3 起) | RIBOCICLIB | 药品聚合 | 版本相关 | 2014Q3 前无此字段 | Product Dictionary 活性成分 |
| ROLE_COD | 文本 | 药品角色 | PS | 判定可疑药 | 报告者自评 | 可能存在 | PS/SS/C/I |
| ROUTE / DOSE_AMT | 文本/数值 | 给药途径/剂量 | ORAL / 600 mg | 剂量-反应 | 自报、单位混杂 | 常见缺失 | 开放 |
| PT(REAC/INDI) | 文本 | MedDRA 首选术语 | 10066397 | 事件/适应症标签 | 编码员版本 | 罕见 | MedDRA PT 编码 |
| OUTC_COD(OUTC) | 文本 | 结局代码 | DE | 严重度 | 报告者 | 0+ 行可缺 | OT/DE/LT/HO/DS/CA/RI/SC |
| RPSR_COD(RPSR) | 文本 | 来源代码 | MD | 分层 | 报告者 | 0+ 行可缺 | MD/PH/CN/OT/LW 等 |
§4.2 标签分布
FAERS 没有单一"分类标签",但有可用的结构性标签:
| 标签维度 | 分布参考(来源:AEMS 全库,2026-03) |
|---|---|
| 严重报告 | 严重(除死亡)约 54.6%、非严重约 36.5% |
| 死亡结局 | 约 8.8% 报告含死亡结局 |
| 性别 | 女约 52.7%、男约 34.9%、未指明约 12.4% |
| 报告来源 | 医疗专业约 48.8%、消费者约 48% |
| 地区 | 美国本土约 68.3%、境外约 31.6% |
| 药品角色 | 多数分析聚焦 role_cod=PS(主要疑似)子集 |
注:以上为含重复报告的全库口径;具体药-事件分析的标签分布须自行按目标药过滤。严重度占比会随报告来源与年份漂移——消费者报告占比上升使近年"非严重"占比抬升,跨时间比较务必统一口径 [Cureus][Pharmadossier]。
§4.2b 事件与结局结构解读
理解 REAC 与 OUTC 的语义差异对正确用标签至关重要:
- REAC(不良事件):记录的是 MedDRA PT 层面的"事件"(如 “Nausea”、“Interstitial lung disease”),一份报告可含多条事件,均可作为失衡分析的事件侧。
- OUTC(结局):记录该事件导致的严重结局(OT=其他严重、DE=死亡、LT=危及生命、HO=住院、DS=残疾、CA=先天异常、RI=需干预防永久损害、SC=需手术)。一报告可含多个结局,且结局与具体事件的对应在公开 ASCII 中不以显式外键给出——下游通常按 PRIMARYID 粒度把"某药报告含死亡结局"作为分析口径。
- 因此"某药报告数"“某事件报告数”"含死亡结局报告数"是三个不同口径,论文必须写清用的是哪一个,否则复现时歧义丛生 [FDA 字典][PLoS]。
§4.3 关键统计
- 累计报告约 32.8M 条(AEMS 仪表盘,2026-03-11,含重复)[Cureus]
- 去重示例:2004-2024Q4 提取 22,375,298 条报告,FDA 去重剔除 3,761,306 重复(约 16.8%),得 18,613,992 唯一病例 [PLoS]
- 年度新增近年约 210-236 万条/年(2019-2024,按接收年)[Cureus]
- 每病例可含多条不良事件:去重后 18.6M 病例对应 55.4M 事件记录(平均约 3/例,含多药多事件)[PLoS]
§4.4 数据层级关系(PRIMARYID / CASEID)
FAERS 的两级标识体系是理解全库结构的钥匙:
CASEID(病例,跨随访不变)
│ 一个病例可含 1 或多个版本(follow-up 产生新版本)
▼
PRIMARYID(单份报告 = CASEID + CASEVERSION 拼接)
├── DEMO(1 行人口学/管理)
├── DRUG(1..N 行,按 DRUG_SEQ)
│ ├── REAC 事件与药名的关联隐含(同一 PRIMARYID 下共同计数)
│ ├── INDI(经 INDI_DRUG_SEQ 指回 DRUG_SEQ 的适应症)
│ └── THER(经 DSG_DRUG_SEQ 指回 DRUG_SEQ 的治疗日期)
├── REAC(1..N 行 MedDRA 事件)
├── OUTC(0..N 行结局)
└── RPSR(0..N 行来源)
层级要点:DEMO 是每报告一行的主表;DRUG/REAC/OUTC/RPSR 以 PRIMARYID 多行关联;INDI/THER 进一步以药品序列号关联到具体药。跨季度随访形成"同一 CASEID 多 PRIMARYID",必须去重后才可病例级计数。
§4.5 缺失值情况与信息性缺失编码
| 字段/维度 | 缺失情况 | 信息性缺失解读 | 处理建议 |
|---|---|---|---|
| AGE / SEX | 常见缺失(性别约 12.4% 未指明) | 缺失可能与报告者类型/地区相关 | 分层报告,勿简单丢弃 |
| EVENT_DT | 常仅给部分日期(YYYY 或 YYYYMM) | 反映报告叙述不完整 | 用可用精度做时间窗 |
| 结局 OUTC | 0+ 行,可整条缺失 | 非严重报告常无结局 | 缺失≠未发生 |
| 来源 RPSR | 0+ 行可缺失 | 来源未知影响偏倚调整 | 分组含"未知来源" |
| PROD_AI | 2014Q3 前无此列 | 版本断层,非随机缺失 | 跨版本需用 DRUGNAME+RxNorm 补 |
| 删除病例 | 2019Q1 起 Deleted 列表 | 撤回报告若不剔除会混入 | 每个季度按列表剔除 CASEID |
§5 数据划分与使用建议
§5.1 官方数据划分
FAERS 没有官方的训练/验证/测试划分——它是持续更新的监测库而非为机器学习发布的固定数据集,FDA 也不提供任何"划分建议"。所有划分须研究者自定义,且必须建立在先去重(FDA 协议)的基础上。唯一官方"过滤"是季度 Deleted 删除列表(2019Q1 起)用于剔除撤回报告,以及 FDA 文档给出的去重协议(保留同 CASEID 最新版本)。
§5.2 推荐划分策略
由于 FAERS 本质是"信号库"而非建模数据集,多数工作并非监督学习;若确实需要划分(如训练事件分类器、复发预测),建议:
- 按 CASEID 分层(而非 PRIMARYID)切分:将随访归并到病例后按 CASEID 分组划分,避免同一病例跨折泄漏。
- 时间隔离划分:以接收年(FDA_DT)为界,用较早季训练、较晚季验证/测试,模拟真实前瞻场景。
- 按药/事件分组划分:若要测跨药品泛化,可按药品名分组做 GroupShuffleSplit,验证集合内药品不相交。
§5.3 数据泄漏风险防御
- 随访泄漏:同一 CASEID 的多 PRIMARYID 若跨 train/test 拆分,等效把同一病例复制到两端,虚增指标。划分必须先按 CASEID 去重归并再分组。
- 跨季度重复:同一病例的随访可能落在不同季度文件;仅单季度内去重再拼接会把跨季随访当新病例。FDA 建议把所有季度 DEMO 拼好后再统一去重。
- 药品名拼写泄漏/错配:自由文本 drugname(商品名 vs 通用名、错拼)会导致"同一药"被算作多个类别,或合并不足;务必先 RxNorm/活性成分标准化再分组。
- 适应症混淆(confounding by indication):药-事件失衡可能反映适应症本身的风险;分析应结合 INDI 表并作敏感性限制(如 MDPI 综述建议的以明确 INDI_PT 限定队列)。
§5.4 交叉验证建议
失衡信号检测(ROR/PRR 等)本质是四格表统计,一般不需要交叉验证;若做监督模型(如事件分类),用分层 K 折(k=5)配合 §5.2 的分组原则,报告按药品分组或按时间分块的稳健性检验。因无暴露分母,任何预测都只能预测"被报告的概率",不要解读为"真实事件概率"。
§5.5 外部验证
FAERS 信号的外部位移验证与监督模型不同:
| 外部数据源 | 用途 |
|---|---|
| 独立自发库(EudraVigilance、VigiBase、各国黄卡) | 跨库复现信号是否一致 |
| Sentinel / 行政保险数据库 | 用有分母的队列/病例对照确认发生率与关联 |
| 上市后研究 / 登记研究 | 在受控人群中确证风险 |
| 文献荟萃与机制证据 | 生物学合理性支持 |
建议:FAERS 失衡信号一律视为假设,用独立流行病学来源确认后再作结论。一个可复用的最小验证流程是:①跨库复现——在 EudraVigilance/VigiBase 上重跑同一失衡统计,看信号方向是否一致;②有分母确认——若能找到行政数据库/Sentinel 人群,计算该药-事件的实际相对风险;③机制评估——检索是否存在生物学合理性文献。三者都指向同一方向时,信号才具备较高的监管与临床可信度。许多 FAERS 论文止步于第①步(仅跨库复现失衡),审稿与监管语境下通常需补充至第②步才足以支撑"关联"表述 [FDA AEMS][ScienceInsights]。
关于"排名/横向比较"的明确警告:由于自发上报受上市时长、适应症、媒体关注等非医学因素驱动,FDA 官方与多篇方法学文献都明确反对用 FAERS 报告量在药与药之间做直接风险比较。若确需比较,至少应:限定可比的适应症(INDI)与上市成熟度、使用失衡度量(相对自身背景)而非原始报告数、并把差异上报(Weber 效应)纳入讨论。不做这些调整的"药 A 报告比药 B 多,故 A 更危险"是 FAERS 最常见也最危险的误用之一 [FDA QDE 说明]。
§6 AI 就绪指南
§6.0 云端快速启动
FAERS 无需申请,可先用 openFDA API 快速验证想法(零下载、JSON 输出),或用 FDA Public Dashboard 人工浏览。云端建库(BigQuery/PostgreSQL/数据仓库)建议直接灌入 NBER 的 CSV 或自建 MySQL/PostgreSQL——季度 ASCII 包 $ 分隔,用关系库导入最省事。下面 §6.1-§6.4 给出本地 Python/关系库的最小可用路径。
§6.1 快速上手
目录预期:本例假设你已下载若干季度 ASCII 包并解压到
data/faers_raw/,内含DEMO24Q4.TXT等 $ 分隔文件;随后按季度拼接成几个合并表(或逐季循环处理)。最小可用子集:仅用最近一个季度 + 单一目标药即可跑通去重与失衡统计。
import pandas as pd
# 目录结构预期(一个季度 = 一个子目录):
# data/faers_raw/2024Q4/DEMO24Q4.TXT
# data/faers_raw/2024Q4/DRUG24Q4.TXT
# data/faers_raw/2024Q4/REAC24Q4.TXT
# data/faers_raw/2024Q4/OUTC24Q4.TXT ...
def read_faers_txt(path):
"""FAERS ASCII 文件是 $ 分隔(注意 header 名内可能含空格)。"""
return pd.read_csv(path, sep="$", dtype=str, on_bad_lines="skip")
# 例:读入 2024Q4 的 DEMO 与 REAC
demo = read_faers_txt("data/faers_raw/2024Q4/DEMO24Q4.TXT")
reac = read_faers_txt("data/faers_raw/2024Q4/REAC24Q4.TXT")
print(demo.shape, demo.columns[:8].tolist())
print(reac[["primaryid", "pt"]].head())
性能提示:$ 分隔的季度文件通常有几十万行 DRUG/REAC,一次性
read_csv可行但建议分批或改用 SQL/duckdb。若仅做单药失衡,可先用 DRUG 按药名粗筛出候选 PRIMARYID 再回读 REAC,减少内存占用。
§6.2 数据获取流程
| 方式 | 地址 | 更新 | 用途 |
|---|---|---|---|
| 官方 QDE 下载页 | https://fis.fda.gov/extensions/FPD-QDE-FAERS/FPD-QDE-FAERS.html | 季度 | ASCII/XML 批量全量 |
| Public/AEMS Dashboard | FDA AEMS Public Dashboard | 2025-08 起每日 | 图形化查询 |
| openFDA API | https://open.fda.gov/drug/event/ | 季度(滞后) | JSON 程序化 |
| NBER 镜像 | https://www.nber.org/research/data/fda-adverse-event-reporting-system | 季度 | SAS/Stata/CSV |
获取要点(详见 §6.5 坑点):文件非累计(每季仅当季),需多季拼接;无官方去重脚本,须自行实现 FDA 去重协议;2019Q1 起须处理 Deleted 列表。以下给出下载 + 去重最小实现。
import requests, zipfile, io, os
def fetch_quarter(year, quarter, dest="data/faers_raw"):
"""下载单个季度 ASCII 包并解压(官方 QDE 页文件名约定,示例占位)。"""
fname = f"FAERS_ASCII_{year}Q{quarter}.zip"
os.makedirs(dest, exist_ok=True)
# 实际 URL 前缀以官方 QDE 页公布为准;此处演示逻辑
# url = "https://fis.fda.gov/content/Exports/" + fname
# r = requests.get(url, timeout=180); r.raise_for_status()
# with open(os.path.join(dest, fname), "wb") as f: f.write(r.content)
return os.path.join(dest, fname)
§6.3 预处理全流程
核心三步:跨季度合并 → FDA 去重 → 药物名标准化(可选 MedDRA 版本重映射)。
import pandas as pd
# 1) 合并所有季度 DEMO(先合并再去重,避免跨季随访遗漏)
quarters = ["2023Q4", "2024Q1", "2024Q2", "2024Q3", "2024Q4"]
demo_all = pd.concat(
[read_faers_txt(f"data/faers_raw/{q}/DEMO{q}.TXT") for q in quarters],
ignore_index=True,
)
# 2) FDA 去重:同 CASEID 保留最大 FDA_DT;同 CASEID+FDA_DT 保留最大 PRIMARYID
demo_all["fda_dt"] = pd.to_numeric(demo_all["fda_dt"], errors="coerce")
demo_all["primaryid"] = pd.to_numeric(demo_all["primaryid"], errors="coerce")
demo_all = demo_all.sort_values(
["caseid", "fda_dt", "primaryid"], ascending=[True, True, True]
)
demo_dedup = demo_all.groupby("caseid", as_index=False).tail(1) # 保留每组末行(最新)
# 3) 可选:剔除 2019Q1 起的 Deleted 列表中的撤回 CASEID
# deleted = pd.read_csv("...DeletedCases.txt", ...); demo_dedup = demo_dedup[~demo_dedup.caseid.isin(deleted.caseid)]
keep_ids = set(demo_dedup["primaryid"]) # 用于过滤其他表
print("原始报告", len(demo_all), "→ 去重病例", len(demo_dedup))
去重幅度应量化并在论文中报告。以下演示如何把 DRUG 限定到"主要疑似(role_cod=PS)"的活性成分目标药,再与去重后的 REAC 关联以构造失衡统计的四格表:
# 4) 关联去重后的 DRUG(只保留 PRIMARYID ∈ keep_ids)
drug = read_faers_txt("data/faers_raw/merged/DRUG_ALL.TXT")
drug = drug[drug["primaryid"].astype(int).isin(keep_ids)]
# 5) 限定目标药:活性成分(prod_ai) + 角色(role_cod=PS) 双条件
target = drug[drug["prod_ai"].str.upper().str.contains("RIBO") & (drug["role_cod"] == "PS")]
# 6) 关联 REAC,得到目标药的事件 PT 集(含计数)
reac = read_faers_txt("data/faers_raw/merged/REAC_ALL.TXT")
reac = reac[reac["primaryid"].astype(int).isin(keep_ids)]
target_events = reac.merge(target[["primaryid"]].drop_duplicates(), on="primaryid")
pt_counts = target_events["pt"].value_counts()
print("去重后目标药主要疑似报告数:", target["primaryid"].nunique())
print("Top 5 事件:\n", pt_counts.head())
§6.4 框架加载
用 PyTorch Dataset 封装一个"药-事件失衡分析"或"事件分类"子集。下面以读入合并后的 DRUG+REAC 并构造"某目标药的所有事件 PT 序列"为例:
import pandas as pd
import torch
from torch.utils.data import Dataset, DataLoader
class FAERSReactionDataset(Dataset):
"""给定目标药,返回 (样本特征占位, 事件 MedDRA PT 文本)。"""
def __init__(self, drug_df, reac_df, target_drug="RIBO", role="PS"):
# 仅保留目标药主要疑似(role_cod=PS)且活性成分匹配的报告
d = drug_df[(drug_df["prod_ai"].str.upper().str.contains(target_drug))
& (drug_df["role_cod"] == role)]
self.ids = d["primaryid"].unique()
self.reac = reac_df[reac_df["primaryid"].isin(self.ids)]
def __len__(self):
return len(self.ids)
def __getitem__(self, i):
pid = self.ids[i]
pts = self.reac.loc[self.reac["primaryid"] == pid, "pt"].tolist()
# 文本/嵌入特征化在实际建模中替换;此处演示结构
return {"primaryid": pid, "pt_list": pts, "n_events": len(pts)}
# 使用(示例)
# drug_df = read_faers_txt("data/faers_raw/merged/DRUG_ALL.TXT")
# reac_df = read_faers_txt("data/faers_raw/merged/REAC_ALL.TXT")
# ds = FAERSReactionDataset(drug_df, reac_df, target_drug="RIBO")
# dl = DataLoader(ds, batch_size=64)
§6.5 常见坑点
⚠️ 坑点 1:不按 CASEID 去重直接数"病例"——报告数被随访虚增(分类:数据泄漏)
问题:同一病例的初始报告 + 每次随访各生成一个新 PRIMARYID,共享同一 CASEID。直接 count 会把随访当成新病例,虚增计数与失衡统计的分母。跨多年语料漏去重可令病例数虚高 15%-25%。
症状:某药报告数明显高于 Dashboard 显示;失衡 ROR/PRR 显著但去重后消失;复现文献计数对不上。
解决:
- 简单方法:按 FDA 推荐去重——排序 CASEID → FDA_DT → PRIMARYID,保留每组最新(最大 FDA_DT,次级最大 PRIMARYID)那行,用保留下来的 PRIMARYID 过滤全部表。
- 进阶方法:跨季度把所有季度 DEMO 拼接后再统一去重(而非逐季去重再拼),以防跨季随访。
- SOTA 方法:同时剔除 2019Q1 起的 Deleted 列表撤回 CASEID,并报告去重前后两种口径。
参考:https://pmc.ncbi.nlm.nih.gov/articles/PMC12394486/ ;https://ai-analytics.org/writing/fda-faers-adverse-events
⚠️ 坑点 2:把 PRIMARYID 与 CASEID 混淆——联表/去重主键选错(分类:工程陷阱)
问题:PRIMARYID(报告版本级)与 CASEID(病例级)是两级概念。用 PRIMARYID 做病例级计数或用 CASEID 关联(多版本共享)都会造成多对一错位。
症状:以 PRIMARYID 关联 INDI/THER 得到的是版本级行,去重后出现孤儿;以 CASEID 关联产生重复 JOIN。
解决:先以 CASEID 归并去重,得到唯一病例集合,再用其最新 PRIMARYID 作为统一过滤键关联 DEMO/DRUG/REAC/OUTC。
参考:FDA FAERS Data Dictionary(PRIMARYID/CASEID 定义);https://pharmahub.org/app/site/resources/2018/01/00739/FDA-FAERS-Data-Dictionary.pdf
⚠️ 坑点 3:药品名未标准化——同一药被拆成多个"假药"(分类:预处理陷阱)
问题:DRUG 的 drugname 是自由文本,商品名/通用名/大小写/拼写错误/复合剂并存(如 “Kisqali” vs “ribociclib”),直接按字符串过滤会漏报或误合并。
症状:同一药检索命中数远低于预期;按通用名与商品名分别统计结果不一致;产生活性成分/剂型假类别。
解决:
- 简单方法:统一大小写后同时用商品名与通用名列表匹配,并优先使用 2014Q3 起的 prod_ai(活性成分)列。
- 进阶方法:用 RxNorm 或 WHODrug 把 drugname 映射到标准活性成分(如 MDPI 综述的规范化方法)。
- SOTA 方法:维护字典 + 模糊匹配 + 人工抽检,处理错拼与多成分复方拆分。
参考:https://www.mdpi.com/2227-9032/10/3/420
⚠️ 坑点 4:把失衡信号当因果/当发生率——过度解读 ROR/PRR(分类:评估误用)
问题:失衡统计只表示"该药-事件组合被不成比例地报告",不证明因果,也不含暴露分母。媒体/非专业常把"12,414 例死亡报告"解读为"药品致死",实为统计学信号误读。
症状:依据失衡比值做风险排序或剂量决策;结论被正式流行病学研究所否定。
解决:明确 ROR/PRR 为信号筛检而非因果;结果用"信号需外部验证"表述,并结合适应症(INDI)、事件背景率、临床合理性讨论;死亡率等绝对数不换算为发生率。
参考:https://www.fda.gov/media/110511/download ;https://www.ncbi.nlm.nih.gov/pmc/articles/pmid/30923396/
⚠️ 坑点 5:漏掉 Deleted 删除病例——撤回报告混入分析(分类:预处理陷阱)
问题:2019Q1 起 FDA 在季度包附 Deleted 列表(被撤回/作废病例的 CASEID)。不剔除这些撤回报告会混入错误或重复病例。
症状:去重后仍有与官方删除列表冲突的报告;敏感分析中个别被删大病例显著改变结果。
解决:对每个使用的季度,读取其 DeletedCases 文件,按 CASEID 剔除后再进入建模;文献检索中优先采纳明确说明剔除协议的样本。
参考:https://manu55.magtech.com.cn/shyy/CN/Y2026/V47/I3/62
⚠️ 坑点 6:只拉单一季度文件当全库——漏掉跨季度病例与随访(分类:工程陷阱)
问题:FAERS 季度文件是非累计的(每季仅当季新增)。只处理一个季度会把该季度新增 + 该季产生的随访混在一起,且完全没有历史背景;做药-事件失衡需要足够的历史计数(2×2 表的分母来自全库其他药)。
症状:失衡分析分母缺失无法计算;仅按当季统计与全库口径差异巨大。
解决:失衡分析需覆盖足够多年份(通常跨多年),合并全部所需季度;时间敏感研究用 FDA_DT 过滤而非依赖文件归属季度。
参考:https://www.nber.org/fda/faers/2014/ucm082193.htm ;https://ai-analytics.org/writing/fda-faers-adverse-events
⚠️ 坑点 7:忽略适应症混淆——把适应症疾病的风险归到药上(分类:偏倚陷阱)
问题:某些事件(如心梗、自杀倾向)与适应症本身的自然病程重叠。如精神病药的自杀风险与抑郁本身相关、免疫抑制药的感染与肿瘤病情相关——药-事件失衡可能是"适应症"的镜像而非药效。
症状:ROR 显著但无法区分是药还是疾病所致;敏感分析按适应症限定后信号消失。
解决:结合 INDI 表限定明确适应症(如仅纳入明确 INDI_PT 的病例);用"事件 vs 非目标事件"作为对照以缓解适应症偏倚;对结果报告分层与敏感性分析(参见 FAERS 文献的标准做法)。
参考:https://ai-analytics.org/writing/fda-faers-adverse-events ;https://www.frontiersin.org/journals/pharmacology/articles/10.3389/fphar.2025.1622339/xml
⚠️ 坑点 8:MedDRA 版本漂移——PT/SOC 跨版本不可直接拼接(分类:标签理解)
问题:MedDRA 每半年(3 月/9 月)更新,PT 会新增/废弃/重归类到不同 SOC。不同季度文件由不同版本 MedDRA 编码,跨版本直接拼接 PT 会失真。
症状:同一事件跨年份被记为不同 PT;用新版 SOC 归类旧 PT 时部分事件"消失"或错位。
解决:将全部报告重映射到单一最新 MedDRA 版本再分析(如文献做法);记录所用 MedDRA 版本;对 PT 变化列表做审计。
参考:https://dx.doi.org/10.1371/journal.pone.0334500
§6.6 数据增强
FAERS 是自发报告表,不是影像/文本语料,不当"增强"会产生假信号:
- 危险 ❌:为缓解样本少而对药-事件计数做随机过采样/合成样本——会扭曲失衡统计的 2×2 表,制造假信号。
- 安全 ✅:在不改变四格表计数的前提下,用 MEDDRA 分层(SOC 聚合、HLT/HLGT)对事件做语义上的合理分组增强统计稳健性;对文本类下游任务可用同义改写扩充叙述用于分类模型(须与信号统计分开)。
- 安全 ✅:整合互补来源(多个季度、多入口)扩大历史覆盖——前提是正确去重。
§6.7 模型推荐
| 任务 | 推荐方法 | 理由 | 参考工具/库 |
|---|---|---|---|
| 失衡信号(经典统计) | ROR / PRR / MHRA | 快速、透明、监管惯用 | 自写 pandas/SAS |
| 失衡信号(贝叶斯) | BCPNN(IC) / MGPS(EBGM) | 稀疏数据稳健、收缩假阳性 | Empirical Bayes (openEBGM R) |
| 事件分类 / 复发预测 | 梯度提升 / 分类器(去重病例上) | 中小表高解释性 | XGBoost / LightGBM |
| 药名标准化 | 字典匹配 + 规则 | 精准映射到活性成分 | RxNorm / WHODrug / RxNav API |
| 文本叙述挖掘 | 微调 PLM(如 BioBERT/MedLLM) | 处理报告叙述抽取信息 | HuggingFace |
| 信号自动筛检流程 | 多方法一致判读 | 降低单一方法假阳性 | 四方法合并(ROR+PRR+BCPNN+MGPS) |
§6.8 计算资源需求
| 阶段 | 建议 | 说明 |
|---|---|---|
| 全量去重 + 建库 | 8-16 GB RAM、SSD | 全历史 80+ 季度 $ 分隔文件拼接,关系库索引 PRIMARYID/CASEID |
| 失衡统计(单药) | 无需 GPU,1-2 GB 内存 | 仅需计数四格表 |
| 大文本 / 微调模型 | GPU 8-24 GB(按模型) | 报告叙述体量大时才需要 |
| 存储 | 全历史原始数十 GB + 库预留 | 视是否保留全部季度 XML/ASCII |
§6.9 评估指标代码
失衡信号用四格表指标评估(用于药-事件对,非人群 AUC):
import pandas as pd, numpy as np
def signal_metrics(a, b, c, d):
"""2×2 表:a=该药+目标事件;b=该药+其他事件;c=他药+目标事件;d=他药+其他事件。"""
ror = (a / b) / (c / d) if b and c and d else np.nan
se_ln_ror = np.sqrt(1/a + 1/b + 1/c + 1/d) if all([a, b, c, d]) else np.nan
ror_lo, ror_hi = np.exp(np.log(ror) - 1.96*se_ln_ror), np.exp(np.log(ror) + 1.96*se_ln_ror)
prr = (a / (a + b)) / (c / (c + d)) if (a+b) and (c+d) else np.nan
chi2 = ((a*d - b*c)**2 * (a+b+c+d)) / ((a+b)*(c+d)*(a+c)*(b+d)) if (a+b) and (c+d) else np.nan
return {"ROR": ror, "ROR_95%CI": (ror_lo, ror_hi), "PRR": prr, "chi2": chi2}
# 例:a,b,c,d 为去重后某药的计数(从 DEMO/DRUG/REAC 拼出四格表)
print(signal_metrics(a=120, b=3000, c=4000, d=400000))
§6.10 MLOps 笔记
- 数据管线版本化:记录下载的季度区间、去重实现、MedDRA/药品字典版本、剔除的 Deleted 列表——FAERS 每次更新都会改变历史病例归属,复现必须冻结快照。
- 信号只读为假设:把失衡信号接入决策前,加入"外部验证"门(独立自发库/Sentinel/文献)。
- 数据新鲜度标记:FAERS 季度文件滞后数月、Dashboard 2025-08 起每日更新,报告分析时须声明"截至接收年月"。
- 合规与透明:虽免注册,仍应在论文中说明季度区间与去重协议,避免被审稿人以"方法不清"驳回。
§7 质量评估与局限性
§7.1 已知偏倚
| 偏倚类型 | 描述 | 严重程度 | 缓解 |
|---|---|---|---|
| 低报(underreporting) | 自愿上报,仅部分事件被报告 | 高 | 不作发生率结论;多源互补 |
| 差异上报 / Weber 效应 | 新药、公众化事件上报激增;上市时间影响量 | 高 | 禁止跨药直接比较;按上市时长分层 |
| 报告偏倚(来源异质) | 医疗专业 vs 消费者报告构成与严重度不同 | 中 | 按来源分层分析 |
| 重复报告 | 消费者与厂商双通道重复、随访版本重复 | 中 | FDA CASEID 去重协议 |
| 适应症混淆 | 药-事件失衡受适应症疾病影响 | 中-高 | 结合 INDI、事件对照、敏感性分析 |
| 选择偏倚(谁被上报) | 事件被发现/被上报与产品、传播度相关 | 高 | 定性讨论 + 不泛化 |
| 地域偏倚 | 美国本土占比高(约 68%) | 中 | 按 REPORTER_COUNTRY 分层 |
| 死亡/严重事件夸大 | 严重报告占比高(约 54-64% 依口径) | 中 | 解读时注意非随机抽样 |
§7.2 标注质量评估
编码由 FDA 体系与厂商依 ICH E2B 完成,MedDRA 术语权威。但质量受报告叙述影响:多数报告缺完整暴露/基线/结局信息(FDA 明文列出缺失项);MedDRA 编码本身随版本演化;role_cod(可疑/并用)由报告者自评,主观性强。结论:字段级结构化质量高,医学信息完整度低——下游必须把"报告所述"与"已核实事实"区分开 [FDA QDE 说明]。
§7.3 泛化性讨论
| 场景 | 失效风险 | 证据 |
|---|---|---|
| 用报告数估计真实发生率 | 高(无分母 + 低报) | FDA 明文禁止 |
| 跨药风险排序 | 高(差异上报) | FDA 明文禁止 |
| 延迟起效/迟发事件(癌症等) | 高(FAERS 不敏感) | FDA 文档 |
| 背景率高的常见事件(老年心梗) | 高(缺乏分辨力) | FDA 文档 |
| 单一药罕见信号生成假设 | 中(可用) | 大量文献支持 |
| 美国市场为主的监管情景 | 中(地域局限) | 报告国分布 |
§7.4 伦理考量
- 患者知情与可识别性:公开数据已去标识化,但个案仍可能被误解读;发布研究时应避免对可识别个案的渲染。
- 对患者的影响:FAERS 报告的公开可能让患者依据未经证实的报告停药——传播时必须携带"不构成因果、勿自行停药"的警示。
- 误导风险:将失衡信号表述为"风险/因果"会造成公众恐慌,学者有责任严格措辞。
§7.5 公平性评估
自发报告在性别、年龄、地区上存在系统偏差:女性报告占比高(约 53%)而儿童/老年报告可能不足;美国本土主导(约 68%);各报告国上报行为差异显著。若做"某药更常被报于某人群"的失衡分析,需考虑这些结构性差异——它们可能是监测行为差异而非真实风险差异。按性别/年龄/国别分层的失衡统计是缓解手段。
§7.6 数据漂移提示
- FAERS 是持续更新的监测流,报告行为随媒体、上市时长、季节与监管事件漂移——"2021 年 COVID-19 疫苗上市初期上报激增"即是典型报告漂移。
- 历史与当前药物组成差异大;药物-事件失衡的"背景"(其他药)随库成长而变化。
- 报告人构成逐年变化(消费者比例上升、严重占比下降),跨时间比较需注意口径漂移。
§7.7 DAIMS 24 项数据就绪度评估
| # | 检查项 | 状态 | 说明 |
|---|---|---|---|
| 1 | 数据为宽格式(每行一个样本/事件) | ✅ | 七表关系型,DEMO 每报告一行、REAC 每事件一行 |
| 2 | 有唯一标识符列 | ✅ | PRIMARYID / CASEID 两级主键 |
| 3 | 无 Unicode 或特殊字符 | ⚠️ | 结构化 ASCII 干净;药名含空格/连字符、事件字段需处理 |
| 4 | 无重复行 | ❌ | 同一病例多版本(随访)重复、双通道重复,官方建议去重 |
| 5 | 缺失值已识别并编码 | ⚠️ | 常见缺失(年龄/性别/日期),无统一缺失码,须自行处理 |
| 6 | 标签列被明确标识 | ✅ | PT(事件)/outc_cod/role_cod/I_F_COD 均为明确字段 |
| 7 | 已对罕见类别(<3%)进行分组 | ⚠️ | 大量低频 MedDRA PT,无官方分组,须自行聚合到 HLGT/SOC |
| 8 | 偏倚评估已完成 | ✅ | §7.1 列出 8 类偏倚与缓解 |
| 9 | 有完整的数据字典 | ✅ | FDA ASC_NTS/Data Dictionary 详尽 |
| 10 | 对"信息性缺失"有明确编码解释 | ⚠️ | 缺失常伴随报告者/严重度特征,无官方解释,须自行分析 |
| 11 | 数据采集设备和设置已记录 | ✅ | 上报渠道(MedWatch/E2B/网关)与术语体系文档清晰 |
| 12 | 已移除完全共线性变量 | ✅ | 关系表无多余冗余列(除 DRUGNAME 与 PROD_AI 需判断) |
| 13 | 对编码的映射标准已说明 | ✅ | MedDRA(PT/SOC)、Product Dictionary、role_cod 全文档化 |
| 14 | 对时间戳的处理已明确说明 | ⚠️ | EVENT_DT 可部分缺失、非累计跨季度需自行合并 |
| 15 | 训练/验证/测试划分建议已给出 | ❌ | 官方无任何划分,须研究者自定义 |
| 16 | 数据泄漏风险已被讨论 | ✅ | §5.3 随访/跨季度/药名/适应症四类泄漏 |
| 17 | 标签分布已被分析 | ✅ | §4.2 严重度/性别/来源/地区分布 |
| 18 | 选择性测量偏倚已被讨论 | ✅ | §7.1 + §6.5 坑点(低报/差异上报) |
| 19 | 外部验证建议已给出 | ✅ | §5.5 独立自发库 / Sentinel / 流行病学研究 |
| 20 | 数据更新和版本信息已记录 | ✅ | 2004Q1 起季度更新、版本时间轴完整(§1.4) |
| 21 | 最小必要预处理脚本已提供 | ❌ | 官方无去重/清洗脚本,须社区或自研 |
| 22 | 合规使用要求已明确 | ✅ | Public domain、免申请,无 DUA 要求 |
| 23 | 多模态对齐方法已说明 | ⚠️ | 药(DRUG)与适应症(INDI/THER)靠序列号对齐,无自动对齐脚本 |
| 24 | 去标识化方法已被记录 | ✅ | 公开包去标识化;FOIA 获完整报告需正式请求 |
DAIMS 评分:15 / 24
评分解读:尚可——作为监管公开监测库,其结构、文档、术语规范与去标识化属行业标杆;主要缺口在于"工程就绪度"而非"数据质量":无官方去重/标准化脚本、无任何训练划分、季度非累计需自行合并、缺失无统一编码。这些是自发报告库与"为机器学习设计的数据集"的本质差异。
对你意味着什么:FAERS 的 15 个 ✅ 项来自其教科书级的 FDA 文档与清晰的关系结构——七表 PRIMARYID 关联、MedDRA/Product Dictionary 术语规范、完整版本历史,这在同类自发报告库中无出其右。扣分集中在"需自行工程化"的现实:任何使用前都必须①按 CASEID 去重并剔除 Deleted 列表(否则计数虚高);②跨季度合并(文件非累计);③对药名/事件做标准化与版本重映射;④对失衡信号做外部验证(官方无金标准);⑤在论文中冻结数据快照以便复现。与 EudraVigilance/VigiBase 相比,FAERS 胜在免费开放与海量公开,但"监管监测库≠建模数据集"的边界决定了你必须自建全部数据工程与评估协议。
§7.8 外部验证矩阵
| 外部数据集/场景 | 来源机构 | 评估任务 | 性能指标 | 相对内部变化 | 关键发现 |
|---|---|---|---|---|---|
| Sentinel 系统 | FDA | 用有分母队列确认 FAERS 信号 | 流行病学关联/发生率 | 需独立验证 | FAERS 失衡仅生成假设,Sentinel 提供因果性证据(FDA 官方流程) |
| 独立自发库(EudraVigilance/VigiBase) | EMA / WHO | 跨库复现药-事件失衡 | ROR/PRR 一致性 | 部分信号不一致 | 跨国自发库可互相印证信号稳健性 |
| 肿瘤药特定队列研究(如 BRAF/MEK 心血管毒性) | 多中心回顾 | 信号特征刻画 | 失衡统计 + 临床特征 | 与队列发病率互补 | FAERS 信号须以正式流行病学研究确认(MDPI 文献模式) |
§8 基准性能与生态
§8.1 排行榜与评测生态
FAERS 没有官方机器学习排行榜(它不是监督式基准数据集)。其"性能"生态集中于信号检测方法对比,常以已知真阳性(说明书确认的风险)或权威库交叉验证:
| 排名 | 方法 | 性能 | 年份 | 关键技术 | 完整引用 | 代码 |
|---|---|---|---|---|---|---|
| — | MGPS (EBGM) | 用于 FDA 信号收缩,稀疏稳健 | 2002 | 经验贝叶斯几何均数 | DuMouchel W. “Bayesian data mining in large frequency tables, with an application to the FDA spontaneous reporting system.” Am Stat 1999;53(3):177-190. | openEBGM ® |
| — | BCPNN (IC) | 贝叶斯置信传播,多用于欧洲 | 1998 | 信息成分 IC | Bate A et al. “A Bayesian neural network method for adverse drug reaction signal generation.” Eur J Clin Pharmacol 1998;54:315-321. | R/Python 实现 |
| — | ROR / PRR | 最常用快速失衡筛查 | 2001 | 报告比失衡比 | Rothman KJ et al. Pharmacoepidemiol Drug Saf 2004;13:519-523 (ROR) | 自写(见 §6.9) |
| — | 四方法一致判读 | 降低单一方法假阳性 | 近年 | ROR+PRR+BCPNN+MGPS 合并 | ribociclib SDR 研究:SAGE Open Med 2025. doi:10.1177/20420986251324633 | SAS/R |
重要提示:不同方法阈值、数据集覆盖年代、去重与否会显著改变数值,跨论文直接比较 ROR/PRR 数值不可靠——应关注方向与统计显著性而非绝对大小。
§8.2 SOTA 总结与选型建议
FAERS 上无单一"最优模型"。FDA 体系与多篇文献推荐多方法一致判读(同时满足 ROR、PRR+χ²、BCPNN IC、MGPS EBGM 阈值)以削减假阳性 [SAGE Open Med 2025]。选型建议:快速筛查用 ROR/PRR(透明、可解释);稀疏罕见事件用贝叶斯 BCPNN/MGPS(收缩更稳健);需要监管沟通用 FDA/EMA 认可的方法。一切以正确的去重与数据快照为前提。
§8.3 评测协议
无官方协议,学界通行做法:
- 下载覆盖目标年代的季度 ASCII 包 → 拼接 → FDA CASEID 去重 + Deleted 剔除。
- 限定 role_cod=PS、必要的适应症限制(INDI_PT)与用药角色。
- 以 MedDRA PT 计数据构建 2×2 四格表,计算 ROR/PRR/IC/EBGM 并给 95% CI。
- 多方法一致判读 + 敏感性分析(去重前后、按来源/地区分层)。
- 把信号作为假设,用外部独立数据验证。
- 报告完整方法(季度区间、MedDRA 版本、去重实现)以保证可复现。
常用信号判读阈值参考(多方法,采纳自文献通用标准,供复现比对,非 FDA 硬性规定):
| 方法 | 判读阈值(常见) | 说明 |
|---|---|---|
| ROR | ROR 95% CI 下界 > 1,且报告数 ≥ 2-3 | EMA 推荐口径之一;点估计 > 2 常被用作更严信号 |
| PRR | PRR ≥ 2 且 χ² ≥ 4 | MHRA 常用双条件 |
| BCPNN (IC) | IC-2SD > 0(信息成分下界 > 0) | 贝叶斯收缩,稀疏稳健 |
| MGPS (EBGM) | EBGM05 > 2(下界 > 2) | FDA 收缩经验贝叶斯 |
注意:阈值的选取会直接影响信号集合大小,不同论文常给出不同阈值组合;复现他人结果时必须采用其原始阈值与去重口径,不能混用。
§8.4 相关数据集
| 数据集 | 机构/地区 | 与 FAERS 的关系 |
|---|---|---|
| AEMS | FDA | FAERS 继任平台,跨产品类别,每日更新 |
| Legacy AERS (LAERS) | FDA | FAERS 前身,2004Q1-2012Q3 |
| VAERS | CDC/FDA | 疫苗自发报告,方法论同源 |
| CAERS / MAUDE | FDA | 化妆品/膳食补充剂 / 医疗器械 |
| EudraVigilance | EMA | 欧洲自发报告,结构方法相近 |
| VigiBase / WHO | UMC Uppsala | 各国自发报告汇聚 |
| openFDA drug/event | FDA | FAERS 的 API/JSON 形式 |
| 结构化镜像(NBER) | NBER | FAERS 转 SAS/Stata/CSV 的便利版 |
§8.5 关键论文 Top 10
- Potter E, Reyes M, Naples J, Dal Pan G. (2025). “FDA Adverse Event Reporting System (FAERS) Essentials: A Guide to Understanding, Applying, and Interpreting Adverse Event Data Reported to FAERS.” Clin Pharmacol Ther 118(3):567-582. DOI: 10.1002/cpt.3701. — 面向理解与解释 FAERS 的权威方法学指南。
- Khaleel MA, Khan AH, Ghadzi SMS, Adnan AS, Abdallah QM. (2022). “A Standardized Dataset of a Spontaneous Adverse Event Reporting System.” Healthcare 10(3):420. — 提供去重 + RxNorm 标准化的可复用 FAERS 清理数据集。
- DuMouchel W. (1999). “Bayesian data mining in large frequency tables, with an application to the FDA spontaneous reporting system.” Am Stat 53(3):177-190. — MGPS/EBGM 方法奠基。
- Bate A et al. (1998). “A Bayesian neural network method for adverse drug reaction signal generation.” Eur J Clin Pharmacol 54:315-321. — BCPNN/IC 方法。
- Rothman KJ, Lanes S, Sacks ST. (2004). “The reporting odds ratio and its advantages over the proportional reporting ratio.” Pharmacoepidemiol Drug Saf 13(8):519-523. — ROR 方法学。
- Yang K et al. (2025). “A disproportionality analysis on benzoyl peroxide and its risk of malignancy using the FAERS database.” J Invest Dermatol 145. — 现代失衡分析应用 + 局限讨论实例。
- 多篇 BRAF/MEK、免疫检查点抑制剂 SDR 研究(MDPI Cancers 2025 等) — FAERS 在肿瘤治疗心血管/免疫毒性的类效应信号挖掘范式。
- NBER FAERS 数据页说明(https://www.nber.org/research/data/fda-adverse-event-reporting-system) — 季度文件范围与字段的便捷参考。
- 美国 FDA FAERS 官方 FAQ / Data Dictionary(pharmahub 镜像) — 字段与局限的权威文档。
- FDA Sentinel Initiative 文献 — 与 FAERS 互补的主动监测体系的参考(强化"信号须有分母证据"的方法论认识)。
§8.6 社区活跃度
FAERS 是药物警戒研究的标准公共资源:全球学界每年产出大量信号检测论文;FDA 提供官方 QDE、Dashboard、openFDA 与数据字典;社区提供规范化镜像(NBER SAS/Stata/CSV、RxNorm 标准化数据集)、R 包(openEBGM、faers 系列如 WangLabCSU/faers 用于下载解析去重)与教学资源。相比影像/EHR 数据,FAERS 社区更偏方法学与监管研究而非"排行榜竞赛",活跃度集中在 GitHub R 包、期刊方法与 FDA 官方文档生态 [DeepWiki][MDPI][NBER]。
社区使用模式的现实观察:
- 单药或药类信号研究占主流:绝大多数 FAERS 论文聚焦"某药(类)在某适应症的失衡信号",以 medRxiv/期刊中 BRAF/MEK、PD-1/PD-L1、GLP-1 类等热区为主,方法高度同质(去重 + ROR/PRR 多方法一致判读)。
- 可复现性痛点明显:由于无官方去重脚本、季度文件滞后、MedDRA 版本漂移,各论文在"季度区间、去重实现、MedDRA 版本、role 口径"上的做法差异大,导致同一药跨论文的计数常不一致——这正是本 Wiki §6.5 用大量篇幅强调工程协议的原因。
- 方法与监管文档成熟:相比新兴医疗数据,FAERS 的方法学(失衡统计、多方法判读、外部验证)已有数十年积累与 FDA/EMA 背书,社区共识度在自发报告库中最高。
§8.7 生态快照
| 资源 | 类型 | 链接 | 截至 | 推荐理由 |
|---|---|---|---|---|
| 官方 QDE 下载页 | 官方 | https://fis.fda.gov/extensions/FPD-QDE-FAERS/FPD-QDE-FAERS.html | 2026-09 | ASCII/XML 全量来源 |
| FAERS Public / AEMS Dashboard | 官方 | FDA AEMS Public Dashboard | 2026-09 | 图形化、每日更新 |
| openFDA drug/event API | 官方 | https://open.fda.gov/drug/event/ | 2026-09 | JSON 程序化拉取 |
| FAERS Data Dictionary | 官方文档 | https://pharmahub.org/app/site/resources/2018/01/00739/FDA-FAERS-Data-Dictionary.pdf | 2026-09 | 七表字段权威 |
| FDA AEMS 说明页 | 官方 | https://www.fda.gov/drugs/fda-adverse-event-monitoring-system-aems | 2026-09 | 迁移与局限说明 |
| NBER FAERS/LAERS 镜像 | 社区 | https://www.nber.org/research/data/fda-adverse-event-reporting-system | 2026-09 | SAS/Stata/CSV 便捷版 |
| WangLabCSU/faers ® | 社区 | GitHub(DeepWiki 文档) | 2026-09 | 下载/解析/去重一体化 R 包 |
| openEBGM ® | 社区 | CRAN | 2026-09 | MGPS/EBGM 官方算法实现 |
| POTTER 2025 Essentials | 指南 | DOI:10.1002/cpt.3701 | 2026-09 | 权威解释指南 |
§9 相关资源与引用
官方资源
- 官方季度数据(QDE)下载页:https://fis.fda.gov/extensions/FPD-QDE-FAERS/FPD-QDE-FAERS.html
- FAERS Public / AEMS Dashboard:https://www.fda.gov/drugs/fda-adverse-event-monitoring-system-aems/fda-adverse-event-monitoring-system-aems-public-dashboard
- FAERS 说明与局限(FDA QDE 说明 PDF):https://www.fda.gov/media/110511/download
- FAERS 数据字典(pharmahub 镜像):https://pharmahub.org/app/site/resources/2018/01/00739/FDA-FAERS-Data-Dictionary.pdf
- openFDA FAERS API:https://open.fda.gov/drug/event/
- NBER FAERS/LAERS 镜像:https://www.nber.org/research/data/fda-adverse-event-reporting-system
BibTeX 引用(核心两件套)
% 1) 权威理解/解释指南(建议首选引用)
@article{potter2025faers,
title={FDA Adverse Event Reporting System (FAERS) Essentials: A Guide to Understanding, Applying, and Interpreting Adverse Event Data Reported to FAERS},
author={Potter, Evan and Reyes, Mya and Naples, Jennifer and Dal Pan, Gerald},
journal={Clinical Pharmacology \& Therapeutics},
volume={118},
number={3},
pages={567--582},
year={2025},
publisher={Wiley},
doi={10.1002/cpt.3701}
}
% 2) 标准化/去重方法参考(若使用其清理流程)
@article{khaleel2022standardized,
title={A Standardized Dataset of a Spontaneous Adverse Event Reporting System},
author={Khaleel, Mohammad Ali and Khan, Amer Hayat and Ghadzi, Siti Maisharah Sheikh and Adnan, Azreen Syazril and Abdallah, Qasem M},
journal={Healthcare},
volume={10},
number={3},
pages={420},
year={2022},
publisher={MDPI},
doi={10.3390/healthcare10030420}
}
% 3) 失衡方法奠基(若用 MGPS)
@article{dumouchel1999bayesian,
title={Bayesian data mining in large frequency tables, with an application to the FDA spontaneous reporting system},
author={DuMouchel, William},
journal={The American Statistician},
volume={53},
number={3},
pages={177--190},
year={1999},
publisher={Taylor \& Francis},
doi={10.1080/00031305.1999.10474456}
}
教程与学习资源
- FDA FAERS 数据说明与局限(必读):https://www.fda.gov/media/110511/download
- FAERS Public Dashboard 与 FAQ:FDA AEMS 页面内嵌 FAQ
- openFDA 文档:https://open.fda.gov/apis/drug/event/
- WangLabCSU/faers R 包文档:https://deepwiki.com/WangLabCSU/faers
- POTTER et al. 2025 Essentials(开篇导读)
原始论文与关键文献
- Potter E, Reyes M, Naples J, Dal Pan G. (2025). “FDA Adverse Event Reporting System (FAERS) Essentials.” Clin Pharmacol Ther 118(3):567-582.
- Khaleel MA, Khan AH, Ghadzi SMS, Adnan AS, Abdallah QM. (2022). “A Standardized Dataset of a Spontaneous Adverse Event Reporting System.” Healthcare 10(3):420.
- DuMouchel W. (1999). “Bayesian data mining in large frequency tables…” Am Stat 53(3):177-190.
- Bate A, Lindquist M, Edwards IR, et al. (1998). “A Bayesian neural network method for ADR signal generation.” Eur J Clin Pharmacol 54:315-321.
- Rothman KJ, Lanes S, Sacks ST. (2004). “The reporting odds ratio…” Pharmacoepidemiol Drug Saf 13(8):519-523.
§10 AI 使用声明卡
§10.1 AI 模型使用
| AI 模型 | 版本 | 用途 |
|---|---|---|
| deep-model(WorkBuddy) | 2026-09 | 初稿生成:INFOBOX 数据汇编、§1-§9 结构化写作、§6 代码示例生成、JSON-LD 构建 |
| WebSearch(多源检索) | 2026-09 | 6 组检索:官方页、规模快照、七表结构、LAERS/FAERS 关系、去重协议、偏倚局限复核 |
§10.2 AI 参与范围
AI 参与范围:初稿生成 + 资料整理 + 代码生成 + 格式化排版。
AI 在本页面的工作中负责:(1) 从 FDA 官方页面、FAERS 数据字典、季度 README、权威方法学论文与镜像资源中整理结构化信息;(2) 生成 §6 的 Python 代码示例;(3) 系统化组织 §6.5 的 8 个坑点与 §7.1 偏倚表;(4) 执行 G1/G2/G3 排版规范检查与中英文格式标准化;(5) 构建 §C 统一 JSON-LD @graph。
§10.3 输入来源
- FDA FAERS QDE / AEMS Public Dashboard 官方页(limitations、迁移说明)
- FDA QDE README 与 ASC_NTS 说明(seven ASCII files 结构)
- FDA-FAERS-Data-Dictionary(pharmahub 镜像)
- FDA 官方局限说明 PDF(media/110511/download)
- Cureus 2026 — AEMS 分析(累计 32.8M 报告、分布,访问 2026-03-11)
- PLOS ONE 2025 — FAERS ARDS 人群去重分析(22.4M→18.6M,2019Q1 Deleted)
- FDA FAERS 公开季度 README(openvigil 存档 PDF)
- NBER FAERS/LAERS 数据页(季度范围、LAERS/FAERS 分界、SAS/Stata/CSV)
- MDPI Healthcare 2022 — 标准化/去重方法学
- Pharmadossier AEMS 指南(2026Q1 结构延续验证、报告人分布)
- IntuitionLabs FAERS 解析(时间轴、AEMS、每日更新)
- NCBI PMC30923396(Dashboard 上线、rivaroxaban 死亡示例)
- Frontiers/MDPI BRAF-MEK、ribociclib SDR 研究(方法学范式)
- DeepWiki WangLabCSU/faers(ASCII 2004Q1-2012Q3 / XML 2012Q4 解析、primaryid)
- PRNewswire FDA 2017 Dashboard 发布通稿
§10.4 人工校验表
| 内容模块 | 审核者 | 审核方式 | 审核状态 |
|---|---|---|---|
| §2 医学背景(MedDRA/SNOMED 映射、人群、金标准) | 千方病案医学编辑部 | 交叉审核 | ✅ 已通过 |
| §3 数据集规格(七表、版本矩阵、行数) | 千方病案医学编辑部 | 与 FDA 字典及季度 README 交叉比对 | ✅ 已验证 |
| §4 数据结构(PRIMARYID/CASEID、DAIMS 字段字典) | 千方病案医学编辑部 | 与 FDA Data Dictionary 交叉比对 | ✅ 已验证 |
| §5 数据划分策略 | 千方病案医学编辑部 | 交叉审核 | ✅ 已通过 |
| §6 代码示例与坑点 | 千方病案医学编辑部 | 逻辑审查 + 与去重协议及方法学文献比对 | ✅ 已通过 |
| §7 质量评估与 DAIMS 评分 | 千方病案医学编辑部 | 交叉审核 | ✅ 已通过 |
| §8 排行榜与引用数表述 | 千方病案医学编辑部 | 与原文及权威综述比对 | ✅ 已验证 |
| §C JSON-LD @graph | 千方病案医学编辑部 | Schema v3.9 字段逐项校验 | ✅ 已通过 |
§10.5 AI 生成章节标注
以下章节由 AI 生成初稿并经人工审核:§1.0 30 秒速览、§3.0 版本抉择矩阵、§6.0-§6.4 代码示例、§6.5 八个坑点、§6.9 评估指标代码、§7.5 公平性评估、§7.7 DAIMS 评估表与评分、§8.7 生态快照、§C JSON-LD。
§10.6 最后审核
最后一次人工审核日期:2026-09-05
页面状态:published(全部内容已完成审核并发布)
