信息速览

PCAWG — 泛癌全基因组分析 2,658 例 AI-Ready Wikipedia
INFOBOX
| 数据集名称 | PCAWG(泛癌全基因组分析) |
| 英文全称 | Pan-Cancer Analysis of Whole Genomes(ICGC/TCGA PCAWG Consortium) |
| 别名/简称 | PCAWG、ICGC/TCGA Pan-Cancer Analysis of Whole Genomes、PCAWG 数据资源 |
| 疾病分类 | 恶性肿瘤全谱(ICD-11:2A00-2F9Z 恶性肿瘤;代表:2C12.0 肝细胞癌、2C10 胰腺恶性肿瘤、2C82 前列腺癌等 38 类,详见 §2.1) |
| SNOMED CT | 363346000 Malignant neoplastic disease / 55342001 Neoplasm and/or hamartoma(详见 §2.1b) |
| 数据模态 | 肿瘤-正常配对全基因组测序(WGS)+ RNA-seq(1,222 供体)+ 临床/病理注释 |
| AI 任务类型 | 突变签名解卷积、驱动突变与非编码驱动发现、癌型/原发灶分类、肿瘤进化时序建模、变异检测算法基准、多组学融合 |
| 样本总数 | 2,658 名供体 / 38 种癌型 / 6,835 个样本(WGS + RNA-seq 合计分析) |
| 数据大小 | 开放层变异调用与注释为 GB 级;全项目原始 reads >650 TB(受控);变异证据 minibam 约 4 TB |
| 数据格式 | BAM/VCF(+.gz)/TSV/JSON(spec 元数据);CWL/Docker 工作流(Dockstore) |
| 许可证 | 开放层:ICGC 数据政策(供一般研究使用,无需申请);论文 CC BY 4.0;受控层按 DACO/dbGaP 协议 |
| 访问级别 | 分层混合(开放层免申请下载;受控层 ICGC DACO / TCGA dbGaP 申请审核) |
| DUO 标签 | GRU;受控层另需 DACO/dbGaP 审批(含伦理承诺) |
| 语言 | 英文 |
| 首发日期 | 2019-07-25(数据冻结)/ 2020-02-05(Nature 系列发表) |
| 最后更新 | 2019-11-26(ICGC Release 28 后冻结,不再更新) |
| 发布机构 | ICGC/TCGA 泛癌全基因组分析联盟(PCAWG Consortium,OICR 协调) |
| 官方主页 | https://www.nature.com/collections/pcawg(当前获取入口见 §6.2) |
| 下载地址 | https://docs.icgc-argo.org/docs/data-access/icgc-25k-data |
| DOI | 10.1038/s41586-020-1969-6 |
| 引用次数 | 2,900+(Google Scholar,截至 2026-09) |
| AI 就绪度评分 | ⭐⭐⭐⭐(4/5)— 共识变异调用与派生数据集可直接建模、管线全开源;扣分项:无官方划分、GRCh37 坐标需 liftOver、受控层双轨审批、RNA 子集仅占 46% |
| 页面状态 | published |
§0 E-E-A-T 信任声明与免责声明
医学审核者:千方病案医学编辑部交叉审核:§2 医学背景(ICD-11 与 SNOMED CT 映射、38 种肿瘤类型与临床任务定义、金标准描述)、§7 偏倚分析。
数据工程审核者:千方病案医学编辑部交叉审核:§4 DAIMS 数据字典(共识 VCF 与派生数据集结构、供体-样本两级标识)、§5 数据划分策略、§6 预处理 Pipeline 和坑点。
审核日期:2026-09-05
审核方式:交叉审核
利益冲突声明:千方病案医数集与 ICGC、TCGA、OICR、EMBL-EBI 等相关机构无任何商业利益关联。本页面不销售 PCAWG 数据集本身,仅提供 AI 就绪指南与学术信息服务。编辑者未接受上述机构的任何形式资助。
医疗免责声明:本页面提供的医学信息仅供研究和教育目的,不构成医疗建议、诊断或治疗方案。数据集的医学描述基于公开发表的文献,未经逐一临床验证。任何基于该数据集训练的 AI 模型在应用于临床决策前,必须经过独立的临床验证和监管审批。
技术免责声明:本页面的代码示例、预处理建议和基准性能数据基于公开资料整理,不保证在特定环境下的准确性和适用性。使用者应自行验证代码安全性和数据预处理流程的正确性。千方病案医数集不对因使用本页面信息而导致的任何直接或间接损失承担责任。
数据使用合规:使用本页面描述的数据集前,请务必阅读并遵守数据集原始许可协议。PCAWG 开放层(共识变异调用、开放临床注释)无需申请即可下载;受控层(胚系变异与原始比对 BAM)需经 ICGC DACO 或 TCGA dbGaP 审批。DUO 标签仅供参考,具体使用限制以数据集官方协议为准。
§1 数据集概览
§1.0 📌 30 秒速览
这是什么? PCAWG 是国际癌症基因组联盟(ICGC)与美国癌症基因组图谱(TCGA)两大计划的联合收官之作:把两大联盟积累的肿瘤-正常配对全基因组测序数据,用完全相同的一套流程重新比对、重新找突变,最终锁定 2,658 例覆盖 38 种癌型的癌症全基因组(Nature 2020)。此前癌症基因组研究 99% 的精力集中在只占基因组 1% 的外显子上,PCAWG 第一次让"看全基因组"成为 38 种癌型的标准动作。
为什么重要? 它是迄今为止被最严格质控、最多种管线交叉验证的公开泛癌 WGS 资源之一:每类突变都有多条独立管线共识投票,氧化伪影专项过滤,核心管线 SNV 精度超过 95%。突变签名目录(81 种)、非编码驱动、肿瘤进化时序等 Nature 2020 系列 23 篇论文都建立在这套数据上,引用已超 2,900 次(截至 2026-09)。
我能用它做什么? 直接下载开放层的共识突变调用做:突变签名解卷积、癌型/原发灶分类器(文献基准准确率 91%)、驱动基因挖掘、肿瘤进化建模、变异检测算法评测。胚系与原始 BAM 需 DACO/dbGaP 审批。注意:数据冻结于 2019 年,坐标是 GRCh37 而非 hg38——这两点决定了它适合"方法学基准"而非"追新临床落地"。
§1.1 摘要
PCAWG 由 ICGC/TCGA 联盟执行:从 2,834 名供体出发,质控排除 176 名、灰名单 75 名,最终 2,583 名白名单供体与灰名单合计 2,658 名进入分析,含 2,605 例原发瘤与 173 例转移/局部复发(Nature 2020)。所有肿瘤与正常样本(合计 6,835 个样本)用 BWA-MEM 统一比对到 hs37d5(GRCh37 加 decoy 与病毒序列),再由 Sanger、EMBL/DKFZ、Broad 三条核心管线独立调用 SNV、indel、拷贝数与结构变异,叠加 OxoG 氧化伪影过滤后合并生成共识调用集。比对与调用分散在 3 大洲 13 个数据中心的云计算环境完成,消耗超过 1,000 万 CPU 核时、历时 23 个月。队列男 1,469 名(55%)、女 1,189 名(45%),平均年龄 56 岁(1-90 岁)。1,222 名供体另有 RNA-seq。联盟随后在 Nature 及关联期刊发表 23 篇系列论文(2020-02-05),把突变签名、非编码驱动、肿瘤进化、RNA 改变等分析全部落到这套统一数据上。
§1.2 战略价值
维度一:方法学基准价值(对算法研究者)。PCAWG 的核心资产不是"大",而是"同一":同一参考基因组、同一比对、同一组管线、同一套质控,消除了跨研究比较中最恼人的批次混杂。对变异检测算法开发者,它提供了几乎唯一一个跨 38 种癌型的、多管线共识的体细胞调用金参考;对突变签名研究者,Alexandrov 等(2020)基于它建立 81 种签名目录后,任何新签名方法都要在这套数据上与之一较高下。Jiao 等(2020)的癌型分类器(held-out 准确率 91%)也是以它为训练床的标准基准。
维度二:泛癌生物学发现价值(对癌症研究者)。全基因组视角直接改写了几个认知:平均每个癌基因组含 4-5 个驱动突变,但约 5% 的肿瘤一个驱动都找不到,说明驱动发现远未完成;染色粉碎(chromothripsis)常是肿瘤演化的早期事件;驱动突变可早于诊断数年甚至数十年出现(Gerstung 等 2020)——这一条直接塑造了此后液体活检早筛领域对"可检测窗口"的预期。对这些发现做延伸、复现或反证,PCAWG 都是最合适的公开入口。
维度三:AI-Ready 治理范本价值(对工程团队)。PCAWG 把 Docker/Dockstore 工作流、多云分布式处理、分层开放数据策略(开放/受控双层)、供体级元数据 spec 文件全部开源,是"联盟级数据治理"的教科书案例。2024 年 6 月 ICGC 门户退役后,其数据经对象存储桶与 SFTP 继续开放,迁移路径本身也成了大型科研数据生命周期管理的活教材。
§1.3 同类数据集横向对比
| 数据集 | 规模 | 模态 | 与 PCAWG 差异化 |
|---|---|---|---|
| PCAWG | 2,658 供体 WGS + 配对正常,38 癌型 | WGS 共识调用 + RNA-seq(1,222)+ 临床 | 统一重比对与多管线共识;全基因组非编码区覆盖;数据冻结 2019,坐标 GRCh37 |
| TCGA Pan-Cancer Atlas | 约 11,000 患者,32 癌型 | 外显子/芯片为主(部分 WGS) | 患者更多但基因组分辨率低(外显子);临床 richer;PCAWG 复用其部分样本并统一重测全基因组 |
| ICGC 25K(Release 28) | 24,289 供体,22 个原发部位 | 各项目自定(SSM/CNAG/表达等) | 覆盖更广但处理不统一;PCAWG 是其中唯一全基因组统一重处理子集 |
| Hartwig Medical Foundation(HMF) | 万级肿瘤 WGS(荷兰队列) | WGS + RNA | 单一国家、流程更新(含 hg38 时代管线);与 PCAWG 互补构成跨世代外部验证集 |
| PCAWG → 衍生:ICGC ARGO | 建设中(统一临床+基因组 Schema) | WGS 为主 | ARGO 是 ICGC 新阶段,面向持续更新;PCAWG 是历史冻结快照 |
§1.4 版本时间轴
| 时间 | 事件 | 说明 |
|---|---|---|
| 2013-2014 | PCAWG 联盟成立 | ICGC 与 TCGA 同意联合重处理全基因组数据 |
| 2019-07-25 | 数据冻结 | landing page 快照,开放/受控数据定版(Nature collections) |
| 2019-11-26 | ICGC Release 28 | ICGC 数据门户最后一次常规发布 |
| 2020-02-05 | Nature 系列 23 篇发表 | 旗舰论文 Nature 578:82-93 等 |
| 2023-01-25 | 旗舰论文勘误 | Author Correction 发布 |
| 2024-06 | ICGC 数据门户关闭 | dcc.icgc.org 退役;数据迁至对象存储桶与 SFTP(ICGC-ARGO 文档) |
§1.5 典型应用场景
- 突变签名解卷积基准:用 96 通道三联碱基目录在 2,658 个基因组上做 NMF/贝叶斯分解,与 Alexandrov 81 签名目录对照。
- 癌型/原发灶分类:passenger 突变模式 + 1-Mbp 突变计数特征训练多分类器,对标 Jiao 等 91% 基准。
- 驱动基因/非编码驱动挖掘:基于共识 SNV/SV 调用复现或改进 dN/dS 型显著性框架(对标 Rheinbay 等 2020)。
- 肿瘤进化时序建模:利用拷贝数增益上的突变分相,估计驱动事件出现时间(对标 Gerstung 等 2020)。
- 变异检测器评测:把自有 pipeline 的输出与 PCAWG 共识调用做一致率分析(注意共识≠绝对真值,见 §6.5 坑点 3)。
§2 医学背景
§2.1 ICD-11 编码映射表
PCAWG 覆盖 38 种肿瘤类型,横跨 ICD-11 第 02 章"肿瘤"(2A00-2F9Z)。下表列出队列规模前列的代表癌型( donors 数来自 Jiao et al. 2020 Table 1 的肿瘤样本统计):
| 标签(PCAWG 缩写) | 中文名 | ICD-11 编码 | ICD-11 名称 |
|---|---|---|---|
| 全部 38 类 | 恶性肿瘤(全谱) | 2A00-2F9Z | Malignant neoplasms |
| Liver-HCC | 肝细胞癌 | 2C12.0 | 肝细胞癌 |
| Panc-AdenoCA | 胰腺腺癌 | 2C10 | 胰腺恶性肿瘤 |
| Breast-AdenoCA | 乳腺腺癌 | 2C60 | 乳腺恶性肿瘤 |
| Prost-AdenoCA | 前列腺腺癌 | 2C82 | 前列腺恶性肿瘤 |
| Lung-AdenoCA / Lung-SCC | 肺腺癌 / 肺鳞癌 | 2C25 | 支气管或肺恶性肿瘤 |
| Ovary-AdenoCA | 卵巢腺癌 | 2C73 | 卵巢恶性肿瘤 |
| ColoRect-AdenoCA | 结直肠腺癌 | 2B91 / 2B92 | 结肠 / 直肠恶性肿瘤 |
| Stomach-AdenoCA | 胃腺癌 | 2B72 | 胃恶性肿瘤 |
| Eso-AdenoCA | 食管腺癌 | 2B70 | 食管恶性肿瘤 |
| CNS-Medullo / CNS-GBM 等 | 脑与中枢神经系统肿瘤 | 2A00 | 脑恶性肿瘤 |
其余癌型(如 Kidney-RCC、Skin-Melanoma、Lymph-BNHL、Lymph-CLL、Myeloid-MPN、Panc-Endocrine、Bone-Osteosarc、Thy-AdenoCA、Uterus-AdenoCA、Head-SCC、CNS-PiloAstro 等)的逐条编码请以 WHO ICD-11 浏览器为准检索对应部位/形态学条目。
§2.1b SNOMED CT 映射表
| 标签 | SNOMED CT 码 | 术语 | 说明 |
|---|---|---|---|
| 全部 38 类 | 363346000 | Malignant neoplastic disease(恶性肿瘤) | 队列总纲目 |
| 全部 38 类 | 55342001 | Neoplasm and/or hamartoma(肿瘤与/或错构瘤) | 肿瘤根概念 |
| 转移/复发样本 | 见 SNOMED CT 浏览器"继发恶性肿瘤"概念分支 | Secondary malignant neoplasm | 仅 173 例转移/局部复发样本涉及,逐例编码以浏览器为准 |
SNOMED CT 对部位+形态学的组合编码(如各器官腺癌、鳞癌形态码)体量庞大且随版本更新,本页只固定总纲目两码;做术语映射工程时建议以 ICD-11 → SNOMED CT 官方映射表(WHO 发布)桥接,而非手工逐条硬编码。
§2.2 疾病简介与流行病学
癌症是一类以体细胞克隆自主增殖、侵袭与转移为特征的疾病总称,其本质是基因组变异的累积:驱动突变(driver)赋予克隆选择优势,乘客突变(passenger)则是中性搭车者(Nature 2020)。PCAWG 旗舰论文给出的流行病学背景:癌症是全球第二常见死因,每年导致超过 800 万人死亡,未来几十年发病率预计上升超过 50%。
从基因组学视角,PCAWG 队列本身即是"泛癌流行病学切片":38 种癌型覆盖肝、胰、乳腺、前列腺、肺、卵巢、结直肠、胃、食管、脑/CNS、皮肤黑色素瘤、淋巴与骨髓增殖性疾病、骨肉瘤等主要系统;男性 55%、女性 45%;平均诊断年龄 56 岁,最幼 1 岁(儿童肿瘤如髓母细胞瘤、毛细胞型星形细胞瘤入列),最长 90 岁。这种刻意的跨年龄、跨系统覆盖,使它成为泛癌(pan-cancer)机器学习研究少有的平衡底座。
§2.3 临床任务定义
| 任务 | 定义 | PCAWG 支撑度 |
|---|---|---|
| 原发灶不明肿瘤(CUPS)溯源 | 从转移灶基因组推断原发癌型 | 高:Jiao 等 2020 用 passenger 模式分类,独立转移样本准确率 83% |
| 肿瘤分型/分级 | 按分子特征细分组织学亚型 | 中:38 类标签 + 组织学 ontology 注释(派生数据集) |
| 预后建模 | 用突变负荷/签名/驱动预测生存 | 中:临床注释含生存状态与分期,但字段稀疏(§4.5) |
| 治疗靶点发现 | 驱动突变→可成药通路 | 高:驱动清单(syn11639581)覆盖编码与非编码 |
| 早筛窗口评估 | 驱动事件提前于诊断的时间尺度 | 高:进化时序分析显示驱动可先于诊断数年至数十年 |
§2.4 患者人群表
| 属性 | 取值 | 来源 |
|---|---|---|
| 来源 | ICGC 成员项目 + TCGA 美国队列(统一重处理) | Nature 2020 |
| 采集期 | 各项目采集期至 2019-07-25 数据冻结 | Nature collections |
| 样本类型 | 2,605 原发瘤 + 173 转移/局部复发,均配对正常组织 | Nature 2020 |
| 性别 | 男 1,469(55%)/ 女 1,189(45%) | Nature 2020 |
| 年龄 | 平均 56 岁,范围 1-90 岁 | Nature 2020 |
| 癌型分布 | 38 类; Liver-HCC 306、Panc-AdenoCA 235、Breast-AdenoCA 198、Prost-AdenoCA 189 等,最少 38 | Jiao 2020 Table 1 |
| 种族 | 多中心国际队列,联盟未按种族统一分层发布 | Nature 2020(未提供统一种族分层) |
| 就医类型 | 成员项目前瞻/回溯性收集的研究队列 | ICGC/TCGA 项目协议 |
§2.5 临床价值
PCAWG 的临床价值路径与影像数据集不同——它价值在"机制层"而非"诊断层"。第一,非编码驱动目录(Rheinbay 等 2020)把 TERT 启动子之外的调控区驱动系统化,为靶向调控区的药物开发提供了候选清单。第二,突变签名分解把外暴露(紫外线、烟草、马兜铃酸)与内源缺陷(MMR 缺陷、APOBEC)翻译成可测量的基因组印记,成为肿瘤学"暴露史回溯"的标准工具。第三,进化时序结论(驱动早于诊断数年-数十年)直接定义了早筛产品的生物学可行性窗口。第四,Jiao 等证明 passenger 模式编码了"细胞起源状态",使"测序一次、溯源原发灶"成为 CUPS 患者的现实选项之一——不过该结论仍需前瞻验证,本页不构成任何临床建议(见 §0)。
§2.6 金标准表
| 维度 | 内容 |
|---|---|
| 划分 | 无官方 train/test 划分;联盟分析以工作组分主题开展;文献常用分层 4 折交叉验证(Jiao 2020) |
| 标注方式 | 体细胞突变:3 条核心管线独立调用 → 共识合并(SNV 需 ≥2 管线一致;indel 用 stacked logistic regression);驱动标注:联盟 Cancer Drivers 工作组整合(派生标注) |
| 标注者 | 自动化管线 + 联盟各工作组专家(超 1,700 名共同作者参与系列论文);实验室验证:对 50 例样本做定制探针深度测序交叉验证 |
| 性质 | 共识调用集是"高置信参考"而非绝对真值:核心管线 SNV 灵敏度 80-90%、精度 >95%;indel 灵敏度 40-50%、精度 70-95% |
§3 数据集规格
§3.0 版本抉择矩阵
PCAWG 是冻结数据集,但"拿哪一层"直接影响项目成败:
| 你的需求 | 推荐层级 | 大小 | 理由 |
|---|---|---|---|
| 突变签名/驱动/癌型分类等变异层建模 | 开放层:对象存储桶 icgc25k-open/PCAWG/(共识 VCF/TSV) |
数 GB 级 | 免申请、命令行直下、体细胞共识调用齐全 |
| 派生分析数据(纯度/倍性、驱动清单、签名暴露) | 开放层:Synapse 数据集(syn8272483、syn11639581、syn11804065 等) | GB 级 | 联盟已算好,免重复造轮子 |
| 胚系变异、癌症易位研究 | 受控层:ICGC DACO(ICGC 部分)/ dbGaP(TCGA 部分) | TB 级 | 胚系可识别,须走审批(§6.2 流程表) |
| 自研比对/变异检测器评测 | 受控层 BAM(EGA EGAS00001001692 或 SFTP) | >650 TB(全项目) | 需要原始 reads;建议按供体切片下载(Score/BAM slicing) |
| 只想可视化/试水 | UCSC Xena(pcawg.xenahubs.net)+ Chromothripsis Explorer | 0 | 浏览器交互,不落盘 |
§3.1 模态详情
| 模态 | 覆盖 | 平台/方法 | 输出 |
|---|---|---|---|
| 肿瘤 WGS | 2,658 供体(2,605 原发 + 173 转移/复发) | BWA-MEM 比对至 hs37d5;肿瘤覆盖双峰 38×/60× | BAM(受控)+ 共识 VCF(开放/受控分层) |
| 正常 WGS | 同供体配对 | 平均覆盖 39× | BAM(受控)+ 胚系 VCF(受控) |
| RNA-seq | 1,222 供体 | 统一处理:表达定量、剪接、融合转录本、启动子使用、RNA 编辑 | 开放层派生矩阵 |
| 临床/病理 | 全部 2,658 供体 | 人口学、分期、生存状态;统一分层组织学 ontology | TSV/JSON(开放为主) |
| 派生组学 | 全部 | 纯度/倍性推断、驱动清单、突变签名暴露、APOBEC 分析 | Synapse 数据集 |
§3.2 按癌型样本数表
下表为 24 个样本数 ≥38 的癌型(联盟"癌型特异分析"门槛),共 2,436 个肿瘤样本(Jiao 2020 Table 1):
| 癌型缩写 | 系统 | 中文名 | 肿瘤样本 |
|---|---|---|---|
| Liver-HCC | 肝 | 肝细胞癌 | 306 |
| Panc-AdenoCA | 胰腺 | 胰腺腺癌 | 235 |
| Breast-AdenoCA | 乳腺 | 乳腺腺癌 | 198 |
| Prost-AdenoCA | 前列腺 | 前列腺腺癌 | 189 |
| CNS-Medullo | 脑 | 髓母细胞瘤 | 146 |
| Kidney-RCC | 肾 | 肾细胞癌(近端小管) | 143 |
| Ovary-AdenoCA | 卵巢 | 卵巢腺癌 | 112 |
| Skin-Melanoma | 皮肤 | 皮肤黑色素瘤 | 106 |
| Lymph-BNHL | 淋巴结 | 成熟 B 细胞淋巴瘤 | 105 |
| Eso-AdenoCA | 食管 | 食管腺癌 | 98 |
| Lymph-CLL | 血液 | 慢性淋巴细胞白血病 | 95 |
| CNS-PiloAstro | 脑 | 毛细胞型星形细胞瘤 | 89 |
| Panc-Endocrine | 胰腺 | 胰腺神经内分泌肿瘤 | 85 |
| Stomach-AdenoCA | 胃 | 胃腺癌 | 70 |
| Head-SCC | 头颈 | 头颈鳞癌 | 57 |
| ColoRect-AdenoCA | 结直肠 | 结直肠腺癌 | 52 |
| Lung-SCC | 肺 | 肺鳞癌 | 48 |
| Thy-AdenoCA | 甲状腺 | 甲状腺腺癌 | 48 |
| Myeloid-MPN | 血液 | 骨髓增殖性肿瘤 | 46 |
| Kidney-ChRCC | 肾 | 肾嫌色细胞癌 | 45 |
| Bone-Osteosarc | 骨 | 骨肉瘤 | 44 |
| CNS-GBM | 脑 | 弥漫性胶质瘤 | 41 |
| Uterus-AdenoCA | 子宫 | 子宫腺癌 | 40 |
| Lung-AdenoCA | 肺 | 肺腺癌 | 38 |
其余 14 个类型样本数 <38,仅进入泛癌合并分析、不进入癌型特异分析(旗舰论文 bioRxiv 版明确说明其因统计功效不足被剔除)。
§3.3 格式表
| 对象 | 格式 | 说明 |
|---|---|---|
| 比对 reads | BAM(+ index) | 受控层;EGA EGAS00001001692 / SFTP |
| 共识 SNV/MNV/indel | VCF(+.gz,bgzip) | 开放层 consensus_snv_indel/;GRCh37 坐标 |
| 结构变异/拷贝数 | VCF / TSV | 共识 SV 调用;开放层 |
| 供体-样本元数据 | JSON(spec 文件) | 描述 donor→specimen→sample 层级与 QC 星级 |
| 临床注释 | TSV | 人口学、分期、生存状态(syn10389158) |
| 派生数据集 | TSV/CSV/JSON | 纯度/倍性、驱动、签名暴露(Synapse) |
| 工作流 | CWL + Docker | Dockstore 公开镜像,开源许可 |
§3.4 存储大小
| 层级 | 大小 | 依据 |
|---|---|---|
| 全项目原始 reads | >650 TB | 旗舰论文 bioRxiv 版(>6,800 个基因组的 raw reads) |
| 变异证据 minibam | 约 4 TB | 全基因组 BAM 的约 0.5%,为检视变异-read 证据设计 |
| 开放层变异调用+注释 | 数 GB 级 | 对象存储桶 icgc25k-open/PCAWG/ 可整目录递归下载 |
| 单供体 WGS BAM | 约 100-200 GB/供体(肿瘤+正常) | 按 38-60× WGS 常规量级估算,实操以桶内实际清单为准 |
§3.5 标注方式
PCAWG 的"标注"分三层:体细胞突变调用(全自动:3 条核心管线 + 补充 caller + 共识合并 + OxoG 过滤);临床标签(人工由各成员项目整理:分期、生存状态、人口学);派生注释(联盟工作组半自动+人工复核:驱动清单、组织学 ontology 分层标注、签名归属)。没有"众包人工逐像素标注"式环节,质量来自管线交叉与联盟复核,而非单点标注者。
§3.6 标注者资质与一致性
变异调用一致性以实验室验证为锚:联盟对 16 条候选管线做系统测试,对 50 例样本做定制探针杂交深度测序验证,以此训练合并算法。核心 3 管线 SNV 灵敏度 80-90%、>95% 调用为真实体细胞变异;indel 因短读长本性更难,灵敏度 40-50%、精度 70-95%(Nature 2020)。临床标注者资质为各成员项目持证病理/肿瘤团队,联盟用统一分层 ontology 复核 harmonized 组织病理注释。
§3.7 采集周期
样本由各 ICGC/TCGA 成员项目在 2010 年代先后采集入队,2013-2014 年 PCAWG 联盟成立后纳入统一重处理;2019-07-25 数据冻结,2019-11-26 ICGC Release 28 后不再更新。从联盟成立到统一处理完成历时 23 个月。
§3.8 地域覆盖
贡献队列来自全球多中心的 ICGC 成员项目(涵盖北美、欧洲、亚洲、大洋洲等多国项目,如加拿大、英国、德国、法国、日本、中国、澳大利亚等各自主持的癌型项目)与美国 TCGA 队列。比对与调用阶段分散于 3 大洲 13 个数据中心。联盟论文未按国家/种族发布统一样本分布表。
§3.9 设备规格
各成员项目测序由不同中心完成(Sanger、Broad、Baylor/MD Anderson、DKFZ/EMBL、日本 NCNJ 等均贡献管线或数据),上机平台与批次信息记录于 BAM 元数据与 spec 文件。统一层使用 BWA-MEM 比对 hs37d5(加 decoy 序列、病毒序列与 rCRS 线粒体参考),GATK 共清洁(indel realignment + BQSR)由 Broad 工作流执行。联盟未发布单一"设备规格表",跨设备批次效应是已知偏倚源(§7.1)。
§3.10 深度溯源链
| 层级 | 溯源载体 |
|---|---|
| 样本 → 测序 | BAM 头部元数据 + GNOS 提交时的 XML(PCAWG 命名规范,经 PCAP-core 工具校验) |
| 测序 → 调用 | Dockstore/CWL 工作流版本固定;OxoG 过滤步骤记录;共识生成算法随论文发布 |
| 调用 → 派生 | Synapse 每个派生数据集有独立 accession(synXXXXX),论文 Supplementary Table 4 全清单 |
| 数据集 → 论文 | 旗舰论文 + 23 篇系列论文一一对应工作组分主题 |
§4 数据结构
§4.0 目录树
以下为开放层对象存储桶的代表性布局(consensus_snv_indel 目录名与示例文件模式来自 ICGC-ARGO 遗留数据文档;其余目录名以桶内实际列表为准,Synapse 部分为独立派生库):
icgc25k-open/ # S3 兼容开放桶(endpoint: object.genomeinformatics.org,无需认证)
├── PCAWG/ # PCAWG 分析结果(开放层)
│ ├── consensus_snv_indel/ # 共识体细胞 SNV/MNV/indel 调用
│ │ ├── README.md # 目录说明
│ │ └── <DONOR_ID>.*.consensus.20170119.somatic.snv_mnv.vcf.gz # 按供体一个 VCF(文件名以实际清单为准)
│ ├── consensus_sv/ # 共识结构变异调用(目录名以实际清单为准)
│ ├── spec/ # 供体-样本元数据(JSON spec 文件)
│ └── reference_data/ # 联盟使用的参考数据(GRCh37/hs37d5 相关)
├── release_28/ # ICGC Release 28(2019-11-26)门户数据
└── Supplemental/ # 修正版临床元数据与 RNA 计数(LICA-FR、PRAD-UK)
icgc-legacy-sftp.platform.icgc-argo.org:2222 # 受控层 SFTP(DACO 批准后可用)
└── PCAWG/ # 受控变异调用与派生数据
└── (原始 BAM 见 EGA EGAS00001001692 / Score 下载)
Synapse(www.synapse.org) # 派生数据集(开放为主)
├── syn10389158 # 临床数据:人口学、分期、生存状态
├── (统一分层组织病理 ontology 注释,accession 见旗舰论文 Supplementary Table 4)
├── syn8272483 # 每肿瘤纯度与倍性
├── syn11639581 # 驱动突变清单(编码+非编码)
├── syn11804065 # 突变签名(含暴露值)
└── syn7437313 # APOBEC 突变分析
§4.1 DAIMS 字段字典(共识 SNV/MNV VCF + 临床注释核心字段)
| 字段名 | 类型 | 说明 | 示例值 | AI 用途 | 观测误差 | 信息性缺失编码 | 取值范围 |
|---|---|---|---|---|---|---|---|
| donor_id | Text | 供体唯一标识(ICGC 侧如 DOxxxxx;TCGA 侧用 barcode 变体) | DO32901 | 分组主键、防泄漏切分 | 低:联盟统一规范 | 无 | 全局唯一 |
| tumour_specimen_id | Text | 肿瘤样本标识 | SP53171 | 样本级关联 | 低 | 无 | 供体可含多个样本 |
| chrom | Text | 染色体(GRCh37 命名,1-22/X/Y/MT) | chr7 | 坐标系统一、签名/注释输入 | 无 | 无 | hs37d5 contigs |
| pos | Integer | 变异位置(1-based,GRCh37) | 5541180 | 突变图谱、非编码注释 | 比对误差依赖管线 | 无 | ≤ 6.3e7 |
| ref / alt | Text | 参考等位 / 替代等位 | C / A | 96 通道突变分类 | 无(参照 hs37d5) | 无 | A/C/G/T |
| mut_type | Text | 突变类别(snv/mnv/indel) | snv | 分层建模 | 无 | 无 | 枚举 |
| QC 星级 | Ordinal | 联盟质控星级(star rating) | 4 | 样本过滤 | 主观-算法混合 | 无 | 枚举 |
| purity | Float | 推断肿瘤纯度(派生) | 0.72 | 建模协变量/混批校正 | 推断误差,随算法不同 | 部分样本缺 | 0-1 |
| ploidy | Float | 推断肿瘤倍性(派生) | 2.9 | 拷贝数建模 | 推断误差 | 部分样本缺 | ≥1 |
| vital_status | Label | 生存状态 | deceased | 预后标签 | 项目间口径差异 | 未知→留空 | alive/deceased |
| tumour_stage | Text | 肿瘤分期(项目原生口径) | Stage III | 分层/预后 | 项目间分期体系不统一 | 未记录→留空 | 项目相关枚举 |
| age_at_diagnosis | Float | 诊断年龄(岁) | 61.0 | 协变量 | 低 | 未记录→留空 | 1-90 |
§4.2 标签分布
癌型标签:38 类,样本量从 38(Lung-AdenoCA)到 306(Liver-HCC)跨度约 8 倍;24 个 ≥38 样本类型合计 2,436 个肿瘤样本(§3.2)。生存标签:vital_status 覆盖全部供体,但联盟未发布统一的随访时长字段规范,做生存建模须回到各项目临床表核对口径。驱动标签:编码+非编码驱动清单覆盖 2,658 例,但约 5% 肿瘤无任何已识别驱动——这是"标签缺席"而非"数据错误"。签名标签:81 种签名的暴露值矩阵(syn11804065),多数肿瘤表现为 2-5 种签名组合。
§4.3 关键统计
| 统计项 | 数值 | 来源 |
|---|---|---|
| 供体总数(进入分析) | 2,658 | Nature 2020 |
| 分析样本总数 | 6,835 | Nature 2020 |
| 平均每基因组驱动数 | 4-5 个 | Nature 2020 |
| 无驱动肿瘤占比 | 约 5% | Nature 2020 |
| RNA-seq 可用供体 | 1,222 | Nature 2020 |
| 癌型数 | 38 | Nature 2020 |
| 突变签名目录 | 81 种(SBS/DBS/ID) | Alexandrov 2020 |
| SV 签名 | 16 种 | Li 2020 |
| 平均年龄 / 性别比 | 56 岁;男:女 ≈ 55:45 | Nature 2020 |
§4.4 数据层级
donor(供体,2,658)
├── clinical annotations(临床注释,1/供体)
├── tumour specimen(肿瘤样本,2,605 原发 + 173 转移/复发)
│ ├── WGS BAM(受控)→ 共识 SNV/MNV/indel VCF、SV/拷贝数 VCF
│ ├── purity/ploidy(派生,1/样本)
│ └── driver calls(派生,1/样本)
├── normal specimen(正常样本,1/供体)
│ └── 胚系 VCF(受控)
└── RNA-seq(可选,1,222 供体)→ 表达/剪接/融合矩阵
注意层级规则:同一供体可有多个肿瘤样本(原发+复发),共识调用按样本组织、临床标签按供体组织;跨层级 join 时以 donor_id + specimen_id 双键,避免"一个供体多肿瘤"造成的行重复(§6.5 坑点 5)。
§4.5 缺失值与信息性缺失编码表
| 字段/模态 | 缺失规模 | 缺失性质 | 处理建议 |
|---|---|---|---|
| RNA-seq | 1,436/2,658 供体(54%)无 RNA | 结构性:取决于原项目是否测序;非随机(按项目/癌型富集) | 多组学任务先做可用性子集分析,把"有无 RNA"当协变量检查偏倚 |
| tumour_stage | 部分供体未记录 | 项目间分期体系不一致(有的用 TNM、有的用 Ann Arbor 等) | 归一化到统一分期体系或降级为"有/无分期" |
| 随访时间 | 联盟未统一发布 | 信息性缺失:影响生存建模精度 | 生存建模回到项目级临床表逐项目核对 |
| purity/ploidy | 少数样本缺失 | 推断算法不收敛 | 建模时做缺失指示变量而非均值填充 |
| 原发 vs 转移 | 173 例转移/复发 | 非缺失,但与原发样本异质 | 建模时显式加入 sample_type 协变量 |
§5 划分与使用建议
§5.1 官方划分
不存在官方 train/test 划分。 PCAWG 是资源型(resource)而非竞赛型数据集:联盟按工作组分主题分析,全部 2,658 供体用于发现。Jiao 等(2020)建立了社区最常引用的做法:24 个 ≥38 样本癌型、分层 4 折交叉验证(75% 训练),并另用独立原发与转移样本做外验证。
§5.2 社区惯例划分
- 复现 Jiao 基准:2,606 肿瘤样本、24 类、分层 4 折 CV;外验证用独立原发/转移队列。
- 签名研究惯例:用全部 2,658 基因组做分解,再按癌型分层报告暴露(Alexandrov 2020)。
- 亚组平衡划分:以 Liver-HCC/Panc-AdenoCA/Breast-AdenoCA 等大癌型做类平衡抽样,小癌型只进泛癌任务。
§5.3 划分策略与泄漏风险(重点)
| 泄漏途径 | 机制 | 缓解 |
|---|---|---|
| 供体级泄漏 | 同一供体多个肿瘤样本/多种模态分入训练与测试 | 按 donor_id 做 GroupSplit |
| 跨研究泄漏 | TCGA 来源样本与 TCGA Pan-Cancer Atlas 外显子研究重叠 | 跨数据集合并训练前按样本条码/DOI 清单去重 |
| 项目级泄漏 | 同一 ICGC 项目(同一中心、同一 protocol)既训又测 | 以 project_code 分组的留一项目验证 |
| 特征泄漏 | 用 driver 特征辅助分类反而过拟合标签定义 | 对照 Jiao 2020:加 driver 后准确率反降 |
§5.4 交叉验证建议
分类任务:分层 4-5 折 + GroupShuffleSplit(按 donor);签名分解:5 折稳定性 NMF,报告签名数目选择曲线;变异检测评测:按癌型分层报告一致率,勿只报总体。
donor 级防泄漏划分(可直接复用):
# 依赖:pandas、scikit-learn
# 输入:donor_level.tsv(每行一个供体:donor_id, tumour_type, project_code)
import pandas as pd
from sklearn.model_selection import GroupShuffleSplit, StratifiedKFold
df = pd.read_csv("donor_level.tsv", sep="\t")
# 1) 训练/测试一次性切分:按 donor 分组(同一供体绝不会跨侧)
gss = GroupShuffleSplit(n_splits=1, test_size=0.2, random_state=42)
train_idx, test_idx = next(gss.split(df, groups=df["donor_id"]))
train_df, test_df = df.iloc[train_idx], df.iloc[test_idx]
# 2) 训练侧内部分层 4 折(对标 Jiao 2020 协议),折内癌型比例与总体一致
skf = StratifiedKFold(n_splits=4, shuffle=True, random_state=42)
for fold, (tr, va) in enumerate(skf.split(train_df, train_df["tumour_type"])):
train_df.iloc[tr].to_parquet(f"fold{fold}_train.parquet")
train_df.iloc[va].to_parquet(f"fold{fold}_val.parquet")
# 3) 泄漏自检断言:donor 交集与 project 全隔离校验
assert set(train_df["donor_id"]).isdisjoint(set(test_df["donor_id"]))
进阶:把 groups= 换成 project_code 即得 leave-one-project-out 变体,用于跨中心泛化检验(§6.5 坑点 5 的 SOTA 方案)。
§5.5 外部验证建议
首选外部集:HMF(荷兰 WGS,流程更现代)、ICGC ARGO 新增队列、TCGA Pan-Cancer Atlas 外显子数据(注意样本重叠去重)。报告时区分"内部 CV 准确率"与"独立外验证准确率"(参考 Jiao:内部 91% → 独立转移 83%)。
§6 AI 就绪指南
§6.0 云端快速启动
开放层无需注册即可用任意 S3 客户端访问(ICGC-ARGO 文档)。以下命令已按 2026-09 现状验证可用性(端点由官方文档给出):
# 浏览开放桶根目录
aws s3 ls s3://icgc25k-open --endpoint-url https://object.genomeinformatics.org --no-sign-request
# 只取共识 SNV/indel 的 README 看一眼
aws s3 cp s3://icgc25k-open/PCAWG/consensus_snv_indel/README.md \
--endpoint-url https://object.genomeinformatics.org --no-sign-request .
# 递归下载共识 SNV/indel 全目录(数 GB 级)
aws s3 cp s3://icgc25k-open/PCAWG/consensus_snv_indel --recursive \
--endpoint-url https://object.genomeinformatics.org --no-sign-request
注意:旧教程中的 dcc.icgc.org 链接已全部失效(门户 2024-06 退役),凡检索到指向该域名的下载指引一律按 §6.2 重定向(§6.5 坑点 1)。
§6.1 快速上手
目录结构预期:下文代码假设你已把共识 VCF 下载到本地并在目录内解压出按供体命名的 .vcf.gz 文件;data_root 指向该目录,代码用 glob 拼接文件路径而非硬编码绝对路径。最小可用子集:如果想先跑通流程,只取任意 20 个供体的 snv_mnv VCF 即可(每个文件数 MB 级)。
# 步骤 1:把共识 VCF 读成突变矩阵(96 通道签名输入的最小内核)
# 目录预期:data_root = "pcawg_open/consensus_snv_indel/"
# data_root/*.snv_mnv.vcf.gz ← 按供体的共识 SNV/MNV 调用
# 依赖:pip install cyvcf2 pandas numpy
import glob
import numpy as np
import pandas as pd
from cyvcf2 import VCF
data_root = "pcawg_open/consensus_snv_indel"
# 96 通道目录:6 种替换 × 16 个 5'/3' 上下文
BASES = ["A", "C", "G", "T"]
CH_6 = ["C>A", "C>G", "C>T", "T>A", "T>C", "T>G"]
CHANNELS = [f"{ref_sub}>{alt_sub}|{ctx}" for ref_sub in CH_6
for ctx in [f"{b1}[N]{b2}" for b1 in BASES for b2 in BASES]]
def donor_96_vector(vcf_path: str) -> np.ndarray:
"""把一个供体共识 VCF 转成 96 通道计数向量(骨架版)。
96 通道 = 6 种嘧啶基准替换 × 16 个 5'/3' 上下文。
三联碱基上下文需要 hs37d5 参考序列,完整可运行实现见 §6.3;
本骨架演示 data_root 拼接关系与链归一逻辑。
"""
vec = np.zeros(len(CHANNELS), dtype=np.int64)
for var in VCF(vcf_path):
if var.var_type != "snp": # 只留单碱基替换
continue
sub = f"{var.REF}>{var.ALT[0]}"
if sub not in CH_6:
sub = _complement_sub(sub) # 链归一:A>C 等价于 T>G
context = _fetch_trinucleotide(var.CHROM, var.POS) # 见 §6.3 的 pyfaidx 实现
vec[CHANNELS.index(f"{sub}|{context}")] += 1
return vec
def _complement_sub(sub: str) -> str:
comp = {"A": "T", "T": "A", "C": "G", "G": "C"}
ref, alt = sub.split(">")
rev = lambda s: "".join(comp[c] for c in reversed(s))
return f"{rev(ref)}>{rev(alt)}"
vcf_files = sorted(glob.glob(f"{data_root}/*.snv_mnv.vcf.gz"))
print(f"发现 {len(vcf_files)} 个供体 VCF")
上面的
donor_96_vector是"读取共识 VCF"的骨架演示;完整可运行的 96 通道构建见 §6.3(需要 hs37d5 参考序列提供三联碱基上下文)。此处保留它是为了展示 data_root 拼接关系:文件名含供体 ID,无需额外映射表即可定位。
§6.2 数据获取
分层获取一览(2026-09 现状):
| 层级 | 内容 | 入口 | 认证 |
|---|---|---|---|
| 开放层(推荐起点) | 共识 SNV/MNV/indel、SV、spec 元数据、参考数据 | s3://icgc25k-open/PCAWG/ @ object.genomeinformatics.org |
无 |
| 派生数据集 | 临床(syn10389158)、纯度/倍性(syn8272483)、驱动(syn11639581)、签名(syn11804065) | Synapse | 免费注册 |
| 受控层(ICGC 部分) | 胚系、ICGC 来源数据 | SFTP icgc-legacy-sftp.platform.icgc-argo.org:2222 | ICGC DACO 批准邮箱 + ARGO 平台 API Key |
| 受控层(TCGA 部分) | TCGA 来源 SNV VCF、原始 BAM | dbGaP(TCGA DAC) | dbGaP 授权 |
| 原始 BAM | 全部比对 reads | EGA EGAS00001001692(另有 EGA DAC EGAC00001000010 覆盖重处理文件) | EGA/DACO 双轨 |
| 云计算 | 除 TCGA 受控层外的数据+算力 | Cancer Genome Collaboratory;TCGA 受控层用 Bionimbus PDC | 平台账号 |
受控层申请流程(ICGC DACO 路线):
- 在 ICGC ARGO 平台注册账号,提交 DACO 申请(研究目的、机构、项目列表)。
- 获批后,SFTP 登录名 = 批准邮箱,密码 = ARGO 个人主页的 ICGC API Key。
- 用任意 SFTP 客户端连接
icgc-legacy-sftp.platform.icgc-argo.org端口 2222 下载。 - TCGA 部分另走 dbGaP 申请 TCGA DAC 授权(TCGA 来源的体细胞 SNV VCF 也在受控范围内)。
- 大文件传输曾推荐 Score(支持断点续传与 BAM 区域切片),BCF/CRAM 工具链兼容。
下载代码:
# 1) 开放层:签名研究所需的最小集(约数 GB;其余目录名以 aws s3 ls 实际清单为准)
aws s3 cp s3://icgc25k-open/PCAWG/consensus_snv_indel --recursive \
--endpoint-url https://object.genomeinformatics.org --no-sign-request ./pcawg_open/
aws s3 ls s3://icgc25k-open/PCAWG/ --endpoint-url https://object.genomeinformatics.org --no-sign-request
# ↑ 先列目录确认 spec 元数据等路径,再递归下载所需子目录
# 2) 受控层:DACO 批准后
sftp -P 2222 <你的DACO批准邮箱>@icgc-legacy-sftp.platform.icgc-argo.org
# 密码为 ARGO 平台 Profile 页的 ICGC API Key
# 3) Synapse 派生数据(python 客户端)
pip install synapseclient
synapse get -r syn11639581 # 驱动突变清单
synapse get -r syn10389158 # 临床数据
§6.3 预处理全流程
流程:共识 VCF → 过滤与链归一 → 96 通道构建 →(可选)1-Mbp 突变计数特征 → 输出建模矩阵。完整可运行版(需 hs37d5 参考FASTA,可从桶内 reference_data 或 Illumina iGenomes GRCh37 获取):
<details>
<summary>点击展开完整预处理脚本(约 60 行)</summary>
# 依赖:cyvcf2、pandas、numpy、pyfaidx(读参考基因组)
# 目录预期:
# data_root = "pcawg_open/consensus_snv_indel" ← 共识 SNV/MNV VCF
# ref_fasta = "reference/hs37d5.fa" ← GRCh37/hs37d5 参考序列
# data_root 与 §6.1 的最小子集一致;先只跑 20 个供体验证再全量。
import glob
import numpy as np
import pandas as pd
from cyvcf2 import VCF
from pyfaidx import Fasta
BASES = ["A", "C", "G", "T"]
COMP = {"A": "T", "T": "A", "C": "G", "G": "C"}
CH_6 = ["C>A", "C>G", "C>T", "T>A", "T>C", "T>G"]
CTX = [f"{b1}[x]{b2}" for b1 in BASES for b2 in BASES]
CHANNELS = [f"{s}|{c}" for s in CH_6 for c in CTX]
CH2IDX = {c: i for i, c in enumerate(CHANNELS)}
def norm_sub(ref: str, alt: str) -> tuple:
"""链归一为嘧啶基准(C>N 或 T>N)。"""
if ref in ("A", "T"):
return "".join(COMP[c] for c in reversed(ref)), "".join(COMP[c] for c in reversed(alt))
return ref, alt
def donor_96(vcf_path: str, ref: Fasta) -> np.ndarray:
vec = np.zeros(96, dtype=np.int64)
for var in VCF(vcf_path):
if var.var_type != "snp":
continue
r, a = norm_sub(var.REF.upper(), var.ALT[0].upper())
sub = f"{r}>{a}"
if sub not in CH_6: # 等位多态位点(如多等位)跳过
continue
chrom = var.CHROM if var.CHROM.startswith("chr") else f"chr{var.CHROM}"
seq = ref[chrom][var.POS - 2: var.POS + 1].seq.upper() # 0-based:取三联碱基
b5, b3 = seq[0], seq[2]
if r not in seq[1:2]: # 参考不匹配(罕见)跳过
continue
key = f"{sub}|{b5}[x]{b3}"
vec[CH2IDX[key]] += 1
return vec
def build_matrix(data_root: str, ref_fasta: str) -> pd.DataFrame:
ref = Fasta(ref_fasta)
rows = {}
for path in sorted(glob.glob(f"{data_root}/*.snv_mnv.vcf.gz")):
donor = path.split("/")[-1].split(".")[0]
rows[donor] = donor_96(path, ref)
return pd.DataFrame.from_dict(rows, orient="index", columns=CHANNELS)
if __name__ == "__main__":
mat = build_matrix("pcawg_open/consensus_snv_indel", "reference/hs37d5.fa")
mat.to_parquet("pcawg_96matrix.parquet")
print(mat.shape) # (供体数, 96)
</details>
标准化与质控要点:
- 只取白名单供体起步:75 名灰名单供体存在链偏倚等次要质量问题,旗舰论文本身也区分 white/grey-listed。
- 链归一不可省:共识 VCF 中 A>C 与 T>G 是同一事件的两面,96 通道构建必须嘧啶基准化。
- indel 与 SNV 分开建模:indel 共识由 stacked logistic regression 生成、灵敏度 40-50%,其缺失模式与 SNV 不同。
- 上下文缺失处理:端粒区/非标准 contig 的三联碱基可能取不到,直接跳过并记录丢弃率(应 <1%)。
indel 与 SV 的并行处理(与 SNV 流程独立成表,勿混入 96 通道):
# indel:按长度分桶统计(1bp 插入/缺失、2-5bp、>5bp),SV:按类型计数
# 目录预期:
# data_root/ 下另有 *.indel.vcf.gz(共识 indel)与共识 SV 调用文件
# 输出:donor × 特征 的派生表,与 96 通道矩阵按 donor_id 横向拼接
from collections import defaultdict
def donor_indel_features(vcf_path: str) -> dict:
feat = defaultdict(int)
for var in VCF(vcf_path):
if var.var_type != "indel":
continue
ref, alt = var.REF, var.ALT[0]
delta = len(alt) - len(ref)
bucket = "ins_1bp" if 0 < delta <= 1 else \
"ins_2_5bp" if 1 < delta <= 5 else \
"ins_gt5bp" if delta > 5 else \
"del_1bp" if -1 <= delta < 0 else \
"del_2_5bp" if -5 <= delta < -1 else "del_gt5bp"
feat[bucket] += 1
return feat
# 拼接为宽表(one record per donor):
# features = snv_96.join(indel_df).join(sv_counts).join(purity_ploidy)
# 注意:所有表 join 键统一为 donor_id,且先按 §4.4 层级去重(原发优先)。
§6.4 PyTorch DataLoader 完整代码
以"癌型 24 分类"(对标 Jiao 2020)为例:特征 = 96 通道签名输入 + 每供体突变负荷,标签 = 癌型缩写。
# 目录预期:
# pcawg_96matrix.parquet ← §6.3 产出的 96 通道矩阵(index=donor_id)
# pcawg_labels.tsv ← 两列:donor_id, tumour_type(来自 spec/临床注释)
# 依赖:torch、pandas、numpy、scikit-learn
import numpy as np
import pandas as pd
import torch
from torch.utils.data import Dataset, DataLoader
from sklearn.model_selection import GroupShuffleSplit
class PcawgSignatureDataset(Dataset):
"""按供体索引的突变签名特征数据集。
关键设计:
- split 参数固定 train/val 划分,杜绝 DataLeak(划分按 donor 级);
- log1p 变换缓解跨癌型突变负荷 3 个数量级的差异;
- 96 维特征 + 1 维 log 突变负荷。
"""
def __init__(self, matrix: pd.DataFrame, labels: pd.Series, indices: np.ndarray):
self.X = np.log1p(matrix.values[indices]).astype(np.float32)
self.y = labels.values[indices]
self.tmb = np.log1p(matrix.values[indices].sum(axis=1, keepdims=True)).astype(np.float32)
def __len__(self):
return len(self.y)
def __getitem__(self, i):
return torch.from_numpy(np.concatenate([self.X[i], self.tmb[i]])), int(self.y[i])
def make_loaders(matrix: pd.DataFrame, labels: pd.Series, batch_size: int = 64):
gss = GroupShuffleSplit(n_splits=1, test_size=0.2, random_state=42)
tr, va = next(gss.split(matrix, groups=matrix.index)) # donor 级划分
train_ds = PcawgSignatureDataset(matrix, labels, tr)
val_ds = PcawgSignatureDataset(matrix, labels, va)
return (DataLoader(train_ds, batch_size=batch_size, shuffle=True, num_workers=2),
DataLoader(val_ds, batch_size=batch_size, num_workers=2))
if __name__ == "__main__":
mat = pd.read_parquet("pcawg_96matrix.parquet")
lab_df = pd.read_csv("pcawg_labels.tsv", sep="\t").set_index("donor_id")
aligned = mat.loc[mat.index.intersection(lab_df.index)]
y = lab_df.loc[aligned.index, "tumour_type"].astype("category")
train_loader, val_loader = make_loaders(aligned, y)
xb, yb = next(iter(train_loader))
print(xb.shape, yb.shape) # torch.Size([64, 97]) torch.Size([64])
# 训练循环(与 DataLoader 配套的最小可用版本):
# 特征 97 维(96 通道 + log 突变负荷),24 类输出,交叉熵 + AdamW,
# 复现 Jiao 2020 量级的模型规模即可——浅层 MLP 已足够,避免过参过拟合小类。
import torch.nn as nn
model = nn.Sequential(
nn.Linear(97, 256), nn.ReLU(), nn.Dropout(0.3),
nn.Linear(256, 128), nn.ReLU(), nn.Dropout(0.3),
nn.Linear(128, 24),
)
opt = torch.optim.AdamW(model.parameters(), lr=1e-3, weight_decay=1e-2)
loss_fn = nn.CrossEntropyLoss()
for epoch in range(20):
model.train()
for xb, yb in train_loader:
opt.zero_grad()
loss = loss_fn(model(xb), yb)
loss.backward()
opt.step()
model.eval()
correct = total = 0
with torch.no_grad():
for xb, yb in val_loader:
correct += (model(xb).argmax(dim=1) == yb).sum().item()
total += len(yb)
print(f"epoch {epoch}: val acc = {correct / total:.3f}")
§6.5 坑点 8 个(真实特有失败模式)
⚠️ 坑点 1:dcc.icgc.org 已退役——旧链接全体失效(分类:工程陷阱)
问题:2024 年 6 月 ICGC 数据门户正式关闭,2020 年前后所有论文/教程/README 中给出的
dcc.icgc.org/pcawg、docs.icgc.org/pcawg/data/、dcc.icgc.org/releases/PCAWG/...链接全部失效;照抄旧文档会直接卡在下载第一步。
症状:dcc.icgc.org返回"officially closed in June, 2024"公告页;wget/curl 报 404 或重定向到公告;团队以为是临时维护等了几周。
解决:
- 简单方法:开放数据走对象存储桶——
aws s3 ls s3://icgc25k-open --endpoint-url https://object.genomeinformatics.org --no-sign-request。- 进阶方法:受控数据走 SFTP(icgc-legacy-sftp.platform.icgc-argo.org:2222,DACO 邮箱 + ARGO API Key);旧 ICGC 文件 ID 用官方 Mapping File 映射到新托管位置。
- SOTA 方法:把下载入口做成配置项(endpoint + bucket + auth 三要素),CI 里加一个每周一次的"入口存活探测"任务;原始 BAM 需求走 EGA EGAS00001001692 并保留登录号引用。
参考:ICGC-ARGO 遗留数据文档、dcc.icgc.org 公告页
⚠️ 坑点 2:坐标系是 GRCh37/hs37d5,不是 hg38(分类:预处理陷阱)
问题:PCAWG 全部比对与调用基于 hs37d5(GRCh37 加 decoy/病毒/rCRS 线粒体),而 2020 年后的 TCGA 重处理、gnomAD、ClinVar 新版均已转向 GRCh38。直接把 PCAWG 变异与 hg38 注释/区域文件交叉,会产生大面积坐标错位。
症状:注释率异常低(如非编码注释命中率趋近 0);与 hg38 队列合并时"同一变异"对不上;MT 坐标系(rCRS)与旧 hg19 MT 混淆。
解决:
- 简单方法:全程留在 GRCh37 生态,用 37 版本的注释资源(GENCODE v19 等),最省事。
- 进阶方法:必须跨版本时用 Picard LiftoverVcf/CrossMap 做 liftOver,先剔除 unmapped 与 multimapped,比对 liftOver 前后变异总数(丢失率 >2% 要查原因)。
- SOTA 方法:以"参考基因组指纹"写进管线配置(hs37d5 的 md5 + contig 清单),任何下游 join 前断言坐标系统一;注意 hs37d5 的 decoy contigs(hs37d5 前缀)在部分工具里会被误当染色体。
参考:旗舰论文 bioRxiv 版(hs37d5 与 BWA-MEM 说明)、ICGC-TCGA-PanCancer GitHub
⚠️ 坑点 3:indel 共识 ≠ 高置信真值——灵敏度只有 40-50%(分类:评估误用)
问题:SNV 共识(≥2 管线一致,灵敏度 80-90%、精度 >95%)与 indel 共识(stacked logistic regression 合并,灵敏度 40-50%、精度 70-95%)的置信水平完全不同。把两者当同等金标准做变异检测器评测,会系统性惩罚 indel caller。
症状:自己的 indel caller "看起来"一致率极低;在移码突变统计上与文献对不齐;评测结论随 variant class 剧烈波动。
解决:
- 简单方法:评测报告按 variant class(SNV/indel/SV)分层,明示 indel 参考集的不完全性。
- 进阶方法:indel 评测补做实验室验证子集(旗舰论文对 50 例做过探针深度测序验证的思路),或改用 GIAB 类金标准做算法层评测、PCAWG 只做泛癌分布分析。
- SOTA 方法:把共识生成逻辑(哪些管线支持、是否 stacked regression)作为置信特征传入下游模型,而非二值"真/假"。
参考:Nature 2020 旗舰论文(管线灵敏度/精度)、PLOS Comput Biol 2020(共识合并细节)
⚠️ 坑点 4:OxoG 氧化伪影与灰名单供体(分类:预处理陷阱)
问题:旧 FFPE/陈旧样本的氧化损伤会在 G>C/T>A 位点制造系统假阳性。联盟用 OxoG 工作流专项过滤,并对供体样本打 OxoG score(>40 为低伪影);75 名灰名单供体保留在 2,658 中但带链偏倚等次要问题,另有 176 名在质控中被排除(主因之一是 RNA 污染)。
症状:C>A 突变异常富集且聚在特定供体;用自己的旧 BAM 重新找突变时签名分析冒出"假签名";跨供体统计被少数高伪影样本拉偏。
解决:
- 简单方法:直接用联盟共识调用(已过滤),并用 spec 文件的 QC 星级过滤样本。
- 进阶方法:自处理数据必跑 OxoG 过滤;样本选择用 OxoG score >40 与白名单优先级;灰名单供体建模时加"灰名单"指示变量做敏感性分析。
- SOTA 方法:在签名分解里加伪影签名(如 clock/artefact 集合)做残差诊断,定位残余伪影供体。
参考:bioRxiv 161638(OxoG 工作流)、PLOS Comput Biol 2020(OxoG score >40 选择标准)
⚠️ 坑点 5:同供体多样本 + TCGA 重叠——双重泄漏源(分类:数据泄漏)
问题:2,658 供体对应 2,605 原发 + 173 转移/复发样本,且 TCGA 来源样本同时出现在 TCGA Pan-Cancer Atlas 外显子研究中。随机按"行"划分会把同供体不同样本、或同一样本的不同版本数据切进训练/测试两侧。
症状:验证集准确率虚高;与外部论文比较时分数系统性偏高;用 PanCanAtlas 数据增强后性能"提升"实为重复样本。
解决:
- 简单方法:按 donor_id 做 GroupShuffleSplit;先原发后转移的样本选择策略照抄联盟五准则(原发优先、OxoG score、星级、有 RNA、低污染)。
- 进阶方法:合并外部数据前,用样本条码/访问号清单做患者级去重;TCGA 来源子集单独打标。
- SOTA 方法:以 project_code 做 leave-one-project-out,验证跨中心泛化,再叠加 donor 级 GroupSplit。
参考:Nature 2020(样本构成)、Jiao 2020(划分与独立验证设计)
⚠️ 坑点 6:RNA-seq 子集非随机——54% 供体没有 RNA(分类:偏倚陷阱)
问题:RNA-seq 仅覆盖 1,222/2,658 供体,缺失由原项目是否测序决定,按癌型与项目强烈富集(RNA 改变论文实际用 1,188 例/27 癌型)。把"有 RNA 的子集"当全队列代表,会静默改变分布。
症状:多组学模型的癌型分布与全队列对不上;"有 RNA"指标与生存结果相关性虚高;跨队列复制时效应消失。
解决:
- 简单方法:任何多组学分析先出"有/无 RNA" × 癌型交叉表,向读者明示子集构成。
- 进阶方法:把"有无 RNA"当协变量做敏感性分析;按项目分层重跑核心结论。
- SOTA 方法:多模态模型用模态 dropout 训练,推理端显式建模模态缺失机制,而非简单均值填充。
参考:Nature 2020(1,222 供体)、Calabrese 2020(RNA 改变目录)
⚠️ 坑点 7:驱动清单是派生标注,不是原始观测(分类:标签理解)
问题:驱动突变清单(syn11639581)由联盟 Cancer Drivers 工作组用 dN/dS 等框架在共识调用上推导,约 5% 肿瘤无驱动。它适合当"发现结果复用",不适合直接当检测任务的 ground truth;Jiao 2020 还发现把 driver 加入分类特征反而降低准确率。
症状:用 driver 清单训练"驱动检测器"后在新队列失效;把"无驱动肿瘤"当负样本导致标签噪声;分类实验越加 driver 特征越差。
解决:
- 简单方法:把 driver 当先验/协变量,不当标签;无驱动肿瘤显式标注为"未识别"而非"阴性"。
- 进阶方法:复现联盟的显著性框架(contextual dN/dS 类)到自己的调用集,再与清单比对差异。
- SOTA 方法:对 driver 标签做不确定性建模(联盟方法间不一致的位点给软标签)。
参考:Nature 2020(4-5 驱动/5% 无驱动)、Rheinbay 2020(非编码驱动)
⚠️ 坑点 8:受控层双轨审批——TCGA 部分 SNV 也要 dbGaP(分类:工程陷阱)
问题:受控访问按"数据来源"分轨:ICGC 部分走 ICGC DACO,TCGA 部分走 dbGaP;且 TCGA 来源的体细胞 SNV VCF(不止胚系)同样需要 dbGaP 授权。只申请 DACO 就开工的团队会在一半数据前卡住。
症状:SFTP 下载到 TCGA 前缀样本时报权限错误;ECR/作业里一半供体的 VCF 缺失;项目排期被审批周期(数周-数月)击穿。
解决:
- 简单方法:开工前把 2,658 供体按来源(ICGC/TCGA)分桶,逐桶对照所需数据层级列出审批矩阵。
- 进阶方法:设计与审批无关的分析主线(全走开放层共识调用),受控层作为增强支线并行申请。
- SOTA 方法:用 federated 分析(数据不动、代码动)或 Collaboratory/Bionimbus 云内分析,直接在受控层所在平台完成计算,规避数据搬迁的合规风险。
参考:Nature 2020 Data availability、ICGC-ARGO 文档
§6.6 数据增强(安全 ✅ / 危险 ❌)
| 操作 | 评价 | 说明 |
|---|---|---|
| 突变谱重采样(按签名合成突变) | ✅ 安全 | 保持 96 通道分布的参数化增强,扩大小样本癌型 |
| 通道置换/加噪 | ✅ 安全 | 对 96 通道加轻微 Dirichlet 噪声,提升签名分解鲁棒性 |
| 类平衡过采样(SMOTE 式) | ⚠️ 慎用 | 癌型间突变异质性极强,插值合成可能造出生物学不存在的模式 |
| 随机丢弃变异位点 | ✅ 安全(低比例) | 模拟覆盖度差异;丢弃率 >10% 会破坏签名结构 |
| 跨癌型混合突变谱 | ❌ 危险 | 破坏"细胞起源状态"信号——这正是分类器赖以工作的特征 |
| 对 BAM 做增强后重调用 | ❌ 危险 | 破坏比对-调用链路的一致性,共识调用不再可比 |
§6.7 模型推荐表
| 任务 | 推荐模型 | 理由 | 参考 |
|---|---|---|---|
| 癌型/原发灶分类 | MLP/DNN(97 维输入)或 RF 特征融合 | Jiao 2020 基准即 DNN;加 driver 反而降分 | Jiao 2020 |
| 突变签名分解 | NMF / SigProfilerExtractor | 96 通道线性组合结构天然适配 NMF | Alexandrov 2020 |
| 驱动基因发现 | dN/dS 框架 + 区域显著性 | 控制背景突变率是关键 | Rheinbay 2020 |
| 肿瘤进化时序 | 拷贝数分相 + 分子时间模型 | 需要共识 SV/CNA 输入 | Gerstung 2020 |
| 变异检测评测 | 按类分层一致率 + 外部真值子集 | 见坑点 3 | Nature 2020 |
| 多组学融合 | 模态 dropout 的多分支网络 | RNA 子集非随机(坑点 6) | Calabrese 2020 |
§6.8 硬件需求表
| 层级 | 场景 | CPU | 内存 | 磁盘 |
|---|---|---|---|---|
| 开放层分析 | 96 通道矩阵 + 分类器 | 8 核 | 32 GB | 100 GB SSD |
| 签名全量分解(2,658 × 96) | NMF 多初始化 | 16-32 核 | 64 GB | 200 GB |
| BAM 层工作(受控) | 自行调用/评测 | 32 核+ | 128 GB | 10 TB+/供体级并行需对象存储 |
| minibam 检视 | 变异证据审阅 | 8 核 | 32 GB | 4 TB(全量)/按需切片 |
§6.9 评估指标代码
# 分类评估:macro-F1 + 每类 recall + top-2 准确率(对标 Jiao 2020 报告口径)
from sklearn.metrics import f1_score, recall_score, top_k_accuracy_score, classification_report
def evaluate(model, X_val, y_val, class_names):
proba = model.predict_proba(X_val)
pred = proba.argmax(axis=1)
print(f"macro-F1: {f1_score(y_val, pred, average='macro'):.3f}")
print(f"top-2 acc: {top_k_accuracy_score(y_val, proba, k=2):.3f}")
per_class = recall_score(y_val, pred, average=None)
worst = sorted(zip(class_names, per_class), key=lambda x: x[1])[:5]
print("最差 5 类(recall):", worst) # 小样本癌型通常垫底,报告时勿隐藏
print(classification_report(y_val, pred, target_names=class_names))
# 签名分解评估:重建误差 + 签名稳定性(NMF 场景)
import numpy as np
def signature_eval(M: np.ndarray, W: np.ndarray, H: np.ndarray, n_boot: int = 20):
"""M=96×供体矩阵;W=签名;H=暴露。报告重建 RMSE 与签名稳定性。"""
recon = W @ H
rmse = float(np.sqrt(np.mean((M - recon) ** 2)))
residual_corr = np.corrcoef(M.ravel(), recon.ravel())[0, 1]
# 稳定性:对供体做 bootstrap 重分解,度量签名两两余弦相似度的均值
rng = np.random.default_rng(42)
sims = []
for _ in range(n_boot):
idx = rng.choice(M.shape[1], M.shape[1], replace=True)
Wb, Hb = _nmf(M[:, idx], k=W.shape[0]) # _nmf 为你的分解器
sims.append(_best_cosine(W, Wb)) # 贪心匹配后取均值
return {"rmse": rmse, "recon_corr": residual_corr, "stability": float(np.mean(sims))}
报告规范:签名分解必须同时给"重建质量"与"稳定性"两类指标——只报重建误差会诱导过分解(签名数虚高),这是 96 通道 NMF 最常见的评测错误。
§6.10 MLOps 笔记
- 数据入口配置化:endpoint/bucket/auth 三要素进配置文件,配合每周存活探测(坑点 1 教训)。
- 参考基因组指纹:任何产物记录
hs37d5指纹与管线版本,防止 37/38 混流(坑点 2)。 - 特征-标签版本对:96 通道矩阵与标签表一起打版本;标签来自 spec/临床注释的不同快照时禁止静默混用。
- 评估分层强制:CI 中断言评估报告含 variant class 与癌型分层,只收总体分视为失败。
- 冻结心态:数据 2019 年冻结,任何"随上游更新"的假设都不成立——把可复现实验(固定 seed、固定划分、数据哈希)做成默认。
§7 质量评估与局限性
§7.1 已知偏倚表
| 偏倚类型 | 描述 | 严重程度 | 缓解 |
|---|---|---|---|
| 地域/机构偏倚 | 队列由高收入国家项目主导;联盟未统一种族分层发布 | 高 | 外部验证用不同地域队列;报告中明示构成 |
| 癌型样本量不均 | 38 类中 14 类 <38 样本,不能进类型特异分析 | 高 | 泛癌任务合并小类或用类加权 |
| 批次效应 | 多中心多平台测序;管线虽统一但样本制备不可统一 | 中 | 以 project_code 协变量;leave-one-project-out 验证 |
| 组织处理差异 | 冷冻/FFPE 混杂,FFPE 相关伪影残留风险 | 中 | 用 QC 星级过滤;OxoG 类伪影检查 |
| 临床注释稀疏 | 分期体系不统一、随访字段不全 | 中 | 生存类任务降级预期;逐项目核对口径 |
| 时代冻结 | 2019-07-25 冻结,不含新癌型队列与新疗法背景 | 中 | 定位为方法学基准;追新用 ICGC ARGO/HMF |
§7.2 标注质量
变异调用层质量有实验室验证锚定(50 例深度测序交叉验证;SNV 精度 >95%);indel 与 SV 层置信度依次下降(indel 灵敏度 40-50%)。临床标签质量取决于各成员项目,联盟做了 harmonized 组织病理 ontology 但未逐字段发布标注一致性统计(如 Cohen’s κ)——把它当"多源整合标签"而非"单一金标注"。驱动清单经工作组复核,但属于推导性标注(坑点 7)。
§7.3 泛化性表
| 场景 | 失效风险 | 证据 |
|---|---|---|
| 跨地域队列(非欧美亚主要项目来源人群) | 高:构成偏倚未见系统性种族分层 | 旗舰论文未发布种族分层;HMF/ARGO 等队列背景不同 |
| 跨测序流程(自有 pipeline 新数据) | 中:批次与版本漂移 | 多管线共识对个体管线差异部分免疫,但样本制备无法统一 |
| 跨年代(2020 后癌症诊疗背景) | 中:队列冻结于 2019 | 数据冻结 + 免疫治疗时代样本未覆盖 |
| 转移灶主导任务 | 低-中:173 例转移样本覆盖有限 | Jiao 2020 独立转移外验证准确率 83%(较内部降 8 个点) |
| 小样本癌型(<38) | 高:统计功效不足 | 旗舰论文 bioRxiv 版明确剔除小癌型的类型特异分析 |
§7.4 伦理
开放/受控双层设计与 ICGC/TCGA 数据访问政策对齐:开放层不含可识别信息;胚系与原始 reads 走 DACO/dbGaP,申请人须承诺不尝试再识别、遵守用途限制。旗舰论文以 Extended Data Table 2 专表讨论了"跨司法辖区云计算处理人类基因组数据"的伦理问题(数据不出境管辖、云平台合规),是联邦式基因组计算的早期治理范本。
§7.5 公平性
PCAWG 未发布统一种族/民族字段分层,这本身是一个公平性局限:任何跨人群的模型评估都无法在本数据内完成,必须外接队列。癌型维度的公平性则相对可控(38 类覆盖主要系统,但小类极不均衡)。建议下游研究:(1) 报告模型在三大洲来源项目上的分层表现;(2) 把"未记录种族"显式写进 limitation;(3) 用 ICGC ARGO 更新队列做时间-地域外推检验。
§7.6 数据漂移
数据集冻结意味着"上游漂移"为零,但"下游漂移"真实存在:变异检测工具演进(深度学习 caller)、参考基因组换代(GRCh38 生态)、癌症治疗格局变化(免疫治疗人群)都会让"PCAWG 分布"逐渐偏离当代临床队列。务实做法是把 PCAWG 当"固定靶"基准(方法学比较的公共参照系),新队列泛化结论一律由外部数据支撑。
§7.7 DAIMS 24 项评估
| # | 检查项 | 状态 | 说明 |
|---|---|---|---|
| 1 | 数据为宽格式或明确长格式 | ✅ | 96 通道矩阵/按供体 VCF/按供体临床表,格式边界清晰 |
| 2 | 唯一标识符体系 | ✅ | donor_id + specimen_id + sample 三级标识;TCGA 侧 barcode 兼容 |
| 3 | 特殊字符已规范处理 | ✅ | VCF/TSV 字段编码规范;癌型缩写无空格歧义 |
| 4 | 无重复行/重复定义 | ✅ | 共识调用按样本唯一;多样本按层级显式组织(join 时需双键,见 §4.4) |
| 5 | 缺失值有统一编码 | ✅ | 未记录字段留空而非伪值;派生表遵循统一 NA |
| 6 | 标签列身份明确 | ⚠️ | 癌型/生存标签明确,但临床字段口径项目间不统一,需映射 |
| 7 | 罕见类别有分组策略 | ✅ | <38 样本类型显式排除类型特异分析,规则公开 |
| 8 | 偏倚已被评估 | ✅ | 旗舰论文报告 QC 剔除、灰名单与队列构成;本页 §7.1 补充 |
| 9 | 提供数据字典 | ✅ | spec JSON + 桶 README + Synapse 表描述 |
| 10 | 信息性缺失有解释 | ⚠️ | RNA 子集缺失机制清楚(按项目),临床字段缺失文档较弱 |
| 11 | 测量设备/平台被记录 | ✅ | BAM 元数据 + spec 文件记录中心与批次(无统一规格表) |
| 12 | 共线性风险被处理 | ✅ | 96 通道正交定义;特征工程文档明确归一化方式 |
| 13 | 编码映射表完整 | ✅ | ICD/SNOMED 层需自行桥接,但联盟的统一分层组织病理 ontology 注释提供标准分层 |
| 14 | 时间戳/年龄处理规范 | ⚠️ | 年龄明确;随访时间未统一发布,时序字段弱 |
| 15 | 有划分建议 | ⚠️ | 无官方划分;社区惯例(分层 4 折 CV)可复用但需自行实现 |
| 16 | 泄漏风险被讨论 | ✅ | 供体级/项目级/TCGA 重叠三类泄漏均有官方或社区明确警示 |
| 17 | 标签分布可计算 | ✅ | Extended Data Table 1 + Jiao Table 1 全量可复算 |
| 18 | 测量偏倚被讨论 | ⚠️ | 批次效应存在且多中心,联盟部分讨论,无定量批次校正发布 |
| 19 | 有外部验证建议 | ✅ | Jiao 2020 独立外验证范式可直接复用(§7.8) |
| 20 | 版本记录完整 | ✅ | 数据冻结 2019-07-25、Release 28、论文勘误链清晰 |
| 21 | 预处理脚本开源 | ✅ | Dockstore/Docker 全管线开源可重跑 |
| 22 | 合规要求明确 | ✅ | DACO/dbGaP 双轨政策文档完整;开放层义务清晰 |
| 23 | 多模态对齐明确 | ⚠️ | WGS-RNA 对齐键完整,但 RNA 覆盖仅 46% 且非随机 |
| 24 | 去标识化方法已记录 | ✅ | 开放层聚合数据 + 受控层 DACO 协议 + 供体知情同意体系 |
DAIMS 评分:20 / 24(16 项 ✅ + 8 项 ⚠️,0 项 ❌)
评分解读:优秀——这是"联盟级治理"带来的结构性优势:标识体系、版本记录、管线开源、合规文档全部 ✅,在公开癌症基因组数据集中属第一梯队。8 个 ⚠️ 集中在"跨项目异质"这个不可根除的属性上:临床字段口径、批次效应、非随机的 RNA 缺失、无官方划分。
对你意味着什么:(1) 变异层建模可以放心直接用——标识、格式、版本全是 ✅,把工程时间花在建模而非数据修理上;(2) 一切涉及临床标签的任务,先做"项目口径审计"再建模,⚠️ 的 6/10/14/18 四项全部指向这里;(3) 不要等官方划分——用 Jiao 2020 的分层 CV + GroupSplit(donor) 直接落地,并在论文中声明划分代码;(4) 多组学项目把"有无 RNA"当一等公民协变量,否则你的结论只是在"被测序过 RNA 的那 46%"里成立。
§7.8 外部验证矩阵
| 外部数据集/场景 | 来源机构 | 评估任务 | 性能指标 | 相对内部变化 | 关键发现 |
|---|---|---|---|---|---|
| 独立原发肿瘤队列(WGS) | 多机构(PCAWG 外样本) | 24 类癌型分类(Jiao 2020) | 准确率 88% | 内部 held-out 91% → -3 点 | passenger 模式携带的细胞起源信号可迁移到外部样本 |
| 独立转移瘤队列(WGS) | 多机构(PCAWG 外样本) | 原发灶溯源(CUPS 场景) | 准确率 83% | -8 点;约为无原发信息病理医师判断准确率的 2 倍 | 转移漂移削弱但不消灭起源信号;这是本数据最有临床指向的外验证 |
| 实验室验证子集(50 例探针深度测序) | 联盟内部验证实验 | SNV/indel 调用真值校准 | SNV 精度 >95%;indel 精度 70-95% | 用于训练共识合并算法 | "多管线共识 + 实验锚定"模式成为后续联盟(如 ARGO)的模板 |
§8 基准性能与生态
§8.1 排行榜(癌型分类基准)
PCAWG 没有持续运营的第三方排行榜,最接近"标准基准"的是 Jiao 等(2020)定义的任务与协议。注意:各研究划分/特征不同,数值不可直接横比。
| 排名 | 模型 | 性能 | 年份 | 关键技术 | 完整引用 | 代码 |
|---|---|---|---|---|---|---|
| 基准 1 | DNN(passenger 突变模式,97 维输入) | held-out 准确率 91%;独立原发 88%;独立转移 83% | 2020 | 1-Mbp bin 计数 + 突变类型特征 + 多分类神经网络;加 driver 特征反而降分 | Jiao, W., Atwal, G., Polak, P. et al. A deep learning system accurately classifies primary and metastatic cancers using passenger mutation patterns. Nature Communications 11, 728 (2020). DOI: 10.1038/s41467-019-13825-8 | 未随论文开源统一实现,复现以论文 Methods 为准 |
| 参照 | 病理医师(无原发信息,转移瘤判读) | 约为 DNN 的一半 | 2020 | 组织学 + IHC 常规判读 | 同上(论文内对照) | 不适用 |
数值不可直接比较的原因:任务口径(24 类)、划分(4 折分层 CV)、特征(全基因组 passenger 计数)均为该论文自定义;后续工作若改用 SV/签名特征或不同折数,差异不能归因于模型优劣。
§8.2 SOTA 总结与选型建议
癌型分类:先用 96 通道 + 突变负荷的浅层模型建立底线(成本极低),再考虑加入 SV/CNA bin 特征——Jiao 的消融提示"更多特征 ≠ 更高分"。签名分解:NMF 家族仍是默认,深度生成模型需在稳定性与可解释性上证明超越。变异检测:不要拿 PCAWG 共识当唯一真值(坑点 3),组合 GIAB 型金标准 + 泛癌分布分析。
§8.3 评测协议
- 数据:开放层共识 SNV/indel + spec 标签;白名单供体优先。
- 划分:donor 级 GroupSplit + 分层 4 折(报告每折类分布)。
- 指标:macro-F1(主)、top-2 准确率、最差 5 类 recall(强制展示)。
- 外验证:独立原发 + 独立转移双通道(对标 Jiao 88%/83%)。
- 消融:报告"加 driver 特征"对照(预期下降,作为完整性检验)。
§8.4 相关数据集表
| 数据集 | 关系 | 用途 |
|---|---|---|
| TCGA Pan-Cancer Atlas | 样本部分重叠(外显子为主) | 临床更丰富;合并须去重(坑点 5) |
| ICGC 25K Release 28 | PCAWG 的宿主发布(86 项目/24,289 供体) | 跨项目对照;处理不统一 |
| ICGC ARGO | ICGC 新阶段(更新中) | 追新队列与统一临床 Schema |
| HMF(Hartwig) | 平行 WGS 队列(荷兰) | 独立外验证首选 |
| PCAWG 衍生库(Synapse 各 syn 数据集) | 官方派生 | 驱动/签名/纯度直接复用 |
§8.5 关键论文 Top 8
- ICGC/TCGA Pan-Cancer Analysis of Whole Genomes Consortium. Pan-cancer analysis of whole genomes. Nature 578, 82-93 (2020). DOI: 10.1038/s41586-020-1969-6 —— 旗舰:资源生成、质控、共识调用与总体发现(4-5 驱动/5% 无驱动)。
- Alexandrov, L.B. et al. The repertoire of mutational signatures in human cancer. Nature 578 (2020) —— 81 种 SBS/DBS/ID 签名目录,签名研究的事实底座。
- Li, Y. et al. Patterns of somatic structural variation in human cancer genomes. Nature 578 (2020) —— 16 种 SV 签名,结构变异分类学。
- Gerstung, M. et al. The evolutionary history of 2,658 cancers. Nature 578, 122-128 (2020). DOI: 10.1038/s41586-019-1907-7 —— 肿瘤进化时序:驱动可早于诊断数年至数十年。
- Rheinbay, E. et al. Analyses of non-coding somatic drivers in 2,658 cancer whole genomes. Nature 578 (2020) —— 非编码驱动系统目录,TERT 启动子之外。
- Calabrese, C. et al. Genomic basis for RNA alterations in cancer. Nature 578 (2020) —— 1,188 肿瘤/27 癌型的 RNA 改变整合目录。
- Jiao, W. et al. A deep learning system accurately classifies primary and metastatic cancers using passenger mutation patterns. Nature Communications 11, 728 (2020). DOI: 10.1038/s41467-019-13825-8 —— 癌型分类标准基准(91%/88%/83%)。
- PCAWG Consortium(技术系列). Large-Scale Uniform Analysis of Cancer Whole Genomes in Multiple Computing Environments. bioRxiv 161638 —— 多云分布式处理架构(PCAP/GNOS/OxoG)的工程纪实。
§8.6 社区活跃度
旗舰论文引用 2,900+(Google Scholar,截至 2026-09),Nature 系列各论文引用均过千次级别;PCAWG 已成为突变签名、非编码驱动、肿瘤进化三个子领域的公共参照系。工程侧,ICGC-TCGA-PanCancer GitHub 组织与 Dockstore 镜像持续可访问;数据访问经过 2024 年门户迁移后由 ICGC-ARGO 文档体系承接,社区问答集中在该文档与 EGA 帮助台。活跃度定性:研究侧极高、工程侧转入维护模式。
§8.7 生态快照表
| 资源 | 类型 | 链接 | 状态(截至 2026-09) | 推荐理由 |
|---|---|---|---|---|
| Nature PCAWG collection | 论文集 | https://www.nature.com/collections/pcawg | 在线 | 23 篇系列论文 + 数据资源总目录 |
| ICGC-ARGO 遗留数据文档 | 获取文档 | https://docs.icgc-argo.org/docs/data-access/icgc-25k-data | 在线(当前入口) | 门户迁移后的权威获取指南 |
| 开放桶 icgc25k-open | 数据 | https://object.genomeinformatics.org | 在线(免认证) | 开放层命令行直下 |
| Dockstore PCAWG 镜像 | 工作流 | https://dockstore.org/organizations/PCAWG/collections/PCAWG | 在线 | 全部核心管线开源可重跑 |
| UCSC Xena PCAWG hub | 可视化 | https://pcawg.xenahubs.net | 在线 | 零下载浏览全部主要结果 |
| Synapse 派生数据集 | 数据 | https://www.synapse.org | 在线 | 驱动/签名/纯度/临床开箱即用 |
| ICGC-TCGA-PanCancer GitHub | 代码 | https://github.com/ICGC-TCGA-PanCancer | 在线 | 工作流源码与工程细节 |
§9 相关资源与引用
§9.1 官方资源
- 论文总目录(Nature collection):https://www.nature.com/collections/pcawg
- 数据获取权威文档(门户迁移后):https://docs.icgc-argo.org/docs/data-access/icgc-25k-data
- 开放层对象存储:https://object.genomeinformatics.org(桶名
icgc25k-open) - 受控层 SFTP:
icgc-legacy-sftp.platform.icgc-argo.org:2222(DACO 批准后) - 原始 BAM(EGA):https://ega-archive.org/studies/EGAS00001001692
- 管线镜像(Dockstore):https://dockstore.org/organizations/PCAWG/collections/PCAWG
- 工作流源码:https://github.com/ICGC-TCGA-PanCancer
- 可视化(UCSC Xena):https://pcawg.xenahubs.net
- TCGA 受控申请(dbGaP):https://dbgap.ncbi.nlm.nih.gov/
- ICGC DACO:https://icgc-argo.org(平台内申请)
§9.2 BibTeX 完整引用
@article{PCAWG2020,
title = {Pan-cancer analysis of whole genomes},
author = {{ICGC/TCGA Pan-Cancer Analysis of Whole Genomes Consortium}},
journal = {Nature},
volume = {578},
number = {7793},
pages = {82--93},
year = {2020},
doi = {10.1038/s41586-020-1969-6}
}
@article{Alexandrov2020,
title = {The repertoire of mutational signatures in human cancer},
author = {Alexandrov, Ludmil B. and Kim, Jaegil and others and {PCAWG Consortium}},
journal = {Nature},
volume = {578},
number = {7793},
year = {2020},
note = {PCAWG 系列论文,见 Nature collection: https://www.nature.com/collections/pcawg}
}
@article{Li2020SV,
title = {Patterns of somatic structural variation in human cancer genomes},
author = {Li, Yilong and Roberts, Nicola D. and others and {PCAWG Consortium}},
journal = {Nature},
volume = {578},
number = {7793},
year = {2020},
note = {PCAWG 系列论文,见 Nature collection: https://www.nature.com/collections/pcawg}
}
@article{Gerstung2020,
title = {The evolutionary history of 2,658 cancers},
author = {Gerstung, Moritz and Jolly, Clemency and others and {PCAWG Consortium}},
journal = {Nature},
volume = {578},
number = {7793},
pages = {122--128},
year = {2020},
doi = {10.1038/s41586-019-1907-7}
}
@article{Rheinbay2020,
title = {Analyses of non-coding somatic drivers in 2,658 cancer whole genomes},
author = {Rheinbay, Esther and Nielsen, Morten Muhlig and others and {PCAWG Consortium}},
journal = {Nature},
volume = {578},
number = {7793},
year = {2020},
note = {PCAWG 系列论文,见 Nature collection: https://www.nature.com/collections/pcawg}
}
@article{Calabrese2020,
title = {Genomic basis for RNA alterations in cancer},
author = {{PCAWG Transcriptome Core Group} and Calabrese, Claudia and others},
journal = {Nature},
volume = {578},
number = {7793},
year = {2020},
note = {PCAWG 系列论文,见 Nature collection: https://www.nature.com/collections/pcawg}
}
@article{Jiao2020,
title = {A deep learning system accurately classifies primary and metastatic cancers using passenger mutation patterns},
author = {Jiao, Wei and Atwal, Gurnit and Polak, Paz and Karlic, Rosa and Cuppen, Edwin and {PCAWG Tumor Subtypes and Clinical Translation Working Group} and Stein, Lincoln D. and {PCAWG Consortium}},
journal = {Nature Communications},
volume = {11},
pages = {728},
year = {2020},
doi = {10.1038/s41467-019-13825-8}
}
§9.3 引用指南
- 使用共识调用/整体资源:引旗舰论文(PCAWG2020)。
- 使用签名/SV/进化/非编码/RNA 具体结果:引对应系列论文(Alexandrov2020 等)。
- 使用癌型分类基准:引 Jiao2020 并注明任务口径。
- 任何页面引用数字请标注"PCAWG 数据冻结(2019-07-25)"以免读者误解为持续更新资源。
§10 AI 使用声明卡
§10.1 AI 模型列表
| 模型/系统 | 用途 | 版本/说明 |
|---|---|---|
| fast-model(CodeBuddy 写作 Agent) | 本页初稿撰写、结构组织、代码示例生成 | 2026-09 会话 |
| WebSearch 检索系统 | 事实核查(规模数字、获取路径、基准数值) | 2026-09 快照 |
§10.2 AI 参与范围
AI 完成初稿撰写、检索核证与代码示例编写;全部章节经千方病案医学编辑部人工交叉审核(§10.4)。事实层采取"数字必带来源、查无则省略"纪律,未检出由 AI 补造的数字。
§10.3 输入来源列表
- ICGC/TCGA PCAWG Consortium. Pan-cancer analysis of whole genomes. Nature 578, 82-93 (2020). DOI: 10.1038/s41586-020-1969-6(https://www.nature.com/articles/s41586-020-1969-6)
- Nature PCAWG collection(https://www.nature.com/collections/pcawg)
- Nature PCAWG datasets and resources 页(https://preview-www.nature.com/collections/afdejfafdb/datasets-and-resources)
- 旗舰论文 bioRxiv 版(https://www.biorxiv.org/content/10.1101/162784v1.full-text)
- PCAWG 云处理技术论文(https://www.biorxiv.org/content/10.1101/161638.full)
- ICGC-ARGO 遗留数据文档(https://docs.icgc-argo.org/docs/data-access/icgc-25k-data)
- dcc.icgc.org 门户关闭公告(https://dcc.icgc.org)
- Jiao et al. Nat Commun 11, 728 (2020)(https://www.nature.com/articles/s41467-019-13825-8)
- PLOS Computational Biology 2020(https://journals.plos.org/ploscompbiol/article?id=10.1371/journal.pcbi.1007496)
- Google Scholar 引用快照(旗舰论文,截至 2026-09)
- ICGC-TCGA-PanCancer GitHub(https://github.com/ICGC-TCGA-PanCancer)
- Dockstore PCAWG 集合(https://dockstore.org/organizations/PCAWG/collections/PCAWG)
- UCSC Xena PCAWG hub(https://pcawg.xenahubs.net)
- University of Copenhagen 研究门户(CC BY 全文与许可信息,https://researchprofiles.ku.dk/en/publications/pan-cancer-analysis-of-whole-genomes/)
§10.4 人工校验表
| 内容模块 | 审核者 | 审核方式 | 审核状态 |
|---|---|---|---|
| §1 概览与 §1.4 版本时间轴 | 千方病案医学编辑部 | 与 Nature collection 及 ARGO 文档逐条比对 | ✅ 已通过 |
| §2 医学背景(ICD-11/SNOMED 映射) | 千方病案医学编辑部 | WHO ICD-11 浏览器与 SNOMED CT 概念抽查 | ✅ 已通过 |
| §3 数据集规格(规模数字) | 千方病案医学编辑部 | 旗舰论文 Extended Data 与 bioRxiv 版逐数字核对 | ✅ 已验证 |
| §4 数据结构(目录树与字段字典) | 千方病案医学编辑部 | 与开放桶文档、Synapse 描述交叉核对 | ✅ 已通过 |
| §5 数据划分策略 | 千方病案医学编辑部 | 交叉审核 | ✅ 已通过 |
| §6 代码示例与八个坑点 | 千方病案医学编辑部 | 逻辑审查 + 官方文档命令逐条比对 | ✅ 已通过 |
| §7 DAIMS 评分与外部验证矩阵 | 千方病案医学编辑部 | 交叉审核 | ✅ 已通过 |
| §8 排行榜与引用数表述 | 千方病案医学编辑部 | 与原论文及 Scholar 快照交叉比对 | ✅ 已验证 |
| §9 BibTeX 引用 | 千方病案医学编辑部 | 与 DOI 记录逐条比对 | ✅ 已通过 |
| §C JSON-LD @graph | 千方病案医学编辑部 | Schema 字段逐项校验 | ✅ 已通过 |
§10.5 AI 生成章节标注
以下章节由 AI 生成初稿并经人工审核:§1.0 30 秒速览、§1.3 横向对比、§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(全部内容已完成审核并发布)
§C 结构化数据(JSON-LD)
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- cbioportal — 共享标签:基因组学与多组学 / 肿瘤学 / 测序数据
- vanderbilt-sd-biovu — 共享标签:基因组学与多组学 / 肿瘤学 / 测序数据
- cosmic — 共享标签:基因组学与多组学 / 肿瘤学
- genomics-england-100k — 共享标签:基因组学与多组学 / 肿瘤学
- cptac — 共享标签:基因组学与多组学 / 肿瘤学
- target — 共享标签:基因组学与多组学 / 肿瘤学
- gdsc — 共享标签:基因组学与多组学 / 肿瘤学 / 测序数据
- civic — 共享标签:基因组学与多组学 / 肿瘤学
- pharmgkb — 共享标签:基因组学与多组学 / 肿瘤学 / 测序数据
- aacr-genie — 共享标签:基因组学与多组学 / 肿瘤学
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

