信息速览
curatedMetagenomicData — 人体宏基因组整合库 AI-Ready Wikipedia
INFOBOX
| 数据集名称 | curatedMetagenomicData(cMD3) |
| 英文全称 | curated Metagenomic Data through ExperimentHub |
| 别名/简称 | cMD、cMD2、cMD3、curatedMetagenomicData(Bioconductor 包名) |
| 疾病分类 | 多疾病整合队列:结直肠癌(ICD-11:2B70)、溃疡性结肠炎(DD70)、克罗恩病(DD71)、2 型糖尿病(5A11)、肝硬化、心血管疾病、肥胖等 142 种健康状态 |
| SNOMED CT | 363406005 Malignant tumour of colon / 64566001 Ulcerative colitis / 34000004 Crohn disease / 44054006 Diabetes mellitus type 2(详见 §2.2) |
| 数据模态 | 宏基因组(物种丰度、标记基因、基因家族、代谢通路)、微生物组、样本级元数据 |
| AI 任务类型 | 疾病分类(病例-对照判别)、差异丰度检测、跨研究 meta 分析、批次校正、年龄/性别/BMI 预测、纵向轨迹建模、口腔-肠道易位量化 |
| 样本总数 | 22,588 个样本 / 93 项研究 / 42 个国家 / 1,609 户家庭(v3.20.0,截至 2026-09) |
| 数据大小 | 上游处理消耗约 52 TB 存储(cMD3 时代);ExperimentHub 按需缓存:单研究对象约 10-100 MB,全量约数 GB |
| 数据格式 | R TreeSummarizedExperiment / SummarizedExperiment(Bioconductor);sampleMetadata 数据框(141 列) |
| 许可证 | Artistic License 2.0(包代码与资源);上游数据遵循各原始研究的公开许可 |
| 访问级别 | 完全开放(R/Bioconductor 安装即用,无需注册或申请) |
| DUO 标签 | PUO, PUB(公开可用;无个体可识别信息) |
| 语言 | 英文(元数据、物种命名与研究命名) |
| 首发日期 | 2017-10-31(Nature Methods 论文刊出)/ v1.0.0 随 Bioconductor 3.6 发布(2017-10) |
| 最后更新 | v3.20.0(Bioconductor 3.23,2026-05);sampleMetadata 由自动化流水线每周重建 |
| 发布机构 | CUNY Waldron Lab(维护)、Trento CIBIO Segata Lab、Harvard T.H. Chan 公共卫生学院 Huttenhower Lab、Roswell Park 等多机构共建 |
| 官方主页 | https://bioconductor.org/packages/curatedMetagenomicData/ |
| 下载地址 | R 内经 ExperimentHub 自动缓存 / https://bioconductor.org/packages/release/data/experiment/html/curatedMetagenomicData.html |
| DOI | 10.1038/nmeth.4468(论文)/ 10.18129/B9.bioc.curatedMetagenomicData(包)/ 10.1038/s41467-025-66888-1(cMD3 论文) |
| 引用次数 | 2,000+(原始论文与生态工具累计,保守口径,截至 2026-09) |
| AI 就绪度评分 | ⭐⭐⭐⭐(4/5)— API 化分发、元数据标准化、每周更新、生态完善;扣分项:组成性数据门槛高、无官方划分、原始 reads 缺位、跨研究批次效应 |
| 页面状态 | published |
§0 E-E-A-T 信任声明与免责声明
医学审核者:千方病案医学编辑部交叉审核:§2 医学背景(微生物组-疾病关联、ICD-11 与 SNOMED CT 映射、口腔-肠道易位的临床解释)、§7 偏倚分析。
数据工程审核者:千方病案医学编辑部交叉审核:§4 数据结构(六类 dataType、TreeSummarizedExperiment 解剖)、§6 预处理 Pipeline、DAIMS 评估与坑点清单。
审核日期:2026-09-05
审核方式:交叉审核
利益冲突声明:千方病案医数集与 CUNY、University of Trento、Harvard T.H. Chan、Roswell Park 及 Bioconductor 项目无任何商业利益关联。本页面不销售 curatedMetagenomicData 数据集本身,仅提供 AI 就绪指南与学术信息服务。编辑者未接受上述任何机构的资助。
医疗免责声明:本页面提供的医学信息仅供研究和教育目的,不构成医疗建议、诊断或治疗方案。数据集的医学描述基于公开发表的文献,未经逐一临床验证。微生物组关联结果绝大多数为横断面观察性关联,不构成因果证据;任何基于该数据集训练的 AI 模型在应用于临床决策前,必须经过独立的临床验证和监管审批。
技术免责声明:本页面的代码示例、预处理建议和基准性能数据基于公开资料整理,不保证在特定环境下的准确性和适用性。使用者应自行验证代码安全性和数据预处理流程的正确性。千方病案医数集不对因使用本页面信息而导致的任何直接或间接损失承担责任。
数据使用合规:本数据集以 Artistic License 2.0 分发且完全开放,但内嵌的 93 项上游研究各有其原始发表与数据许可约束。使用前请阅读 Bioconductor 包页声明与原始研究许可,并按规定引用数据集论文、cMD3 论文及所用上游研究(见 §9 BibTeX)。
§1 数据集概览
§1.0 30 秒速览
curatedMetagenomicData(简称 cMD,当前代际 cMD3)是 Bioconductor 上最大的开放人体宏基因组整合资源:把 93 项已发表研究、22,588 个鸟枪法宏基因组样本,用同一套 MetaPhlAn 3 物种定量 + HUMAnN 3 功能定量管线重新处理一遍,配上 141 列人工校对、每周自动更新的样本元数据,以 R 的 TreeSummarizedExperiment 对象一键分发。
一句话概括:它解决的不是一个"数据集"的问题,而是"几十个数据集没法放在一起比"的问题——统一的上游管线消除了各研究自报丰度的方法学差异,统一的元数据 schema 让跨研究合并、批校正和大样本 meta 分析从数月的脏活变成三行 R 代码。
你可以用它来:在 1,650 个结直肠癌样本上验证菌群诊断标志物、用 MMUPHin 做 30 项研究的 IBD meta 分析、复现 cMD3 论文的口腔-肠道易位发现、或直接把 SIAMCAT 的跨疾病基准跑起来。注意它只提供物种/功能丰度轮廓,不含原始 reads、菌株分离物或宿主临床时序数据。
§1.1 摘要
curatedMetagenomicData 由 Edoardo Pasolli、Levi Waldron 等人于 2017 年发起(Nature Methods 论文,2017-10-31 刊出),最初整合 13 项研究、2,875 个样本;此后持续扩张,v1.16(2020-10)达 57 项研究、10,199 个样本;2022 年发布代际重制的 v3.0.0(cMD3),上游管线从 MetaPhlAn 2/HUMAnN 2 整体迁移到 MetaPhlAn 3/HUMAnN 3,规模跃升至 86 项研究、20,283 个样本;截至 v3.20.0(Bioconductor 3.23,2026-05)已达 93 项研究、22,588 个样本、42 个国家,其中 2025 年发表于 Nature Communications 的 cMD3 论文(Manghi et al.)完成了对性别、年龄、BMI 与疾病状态的全面 meta 分析,并提出"口腔富集分数"(oral enrichment score, OES)作为肠道菌群失调的可量化信号。
数据组织上有六个维度:物种相对丰度(relative_abundance,TreeSummarizedExperiment)、标记基因丰度(marker_abundance)与存在性(marker_presence)(均来自 MetaPhlAn 3)、基因家族(gene_families)、通路丰度(pathway_abundance)与通路覆盖率(pathway_coverage)(均来自 HUMAnN 3)。sampleMetadata 表 141 列,每周由自动化流水线从源文献与仓库重建。项目由 NCI 资助(R01CA230551),CUNY Waldron Lab 维护,Trento Segata Lab 与 Harvard Chan Huttenhower Lab 深度参与,上游 reads 统一重处理累计消耗约 52 TB 存储。
本条目导读:不熟悉微生物组术语先看 §1.5 速查表;评估数据是否契合课题看 §1.3-§1.4 与 §7.5;设计分析直接翻 §8.6 的"研究问题 → 子集映射表";动手取数与建模照 §6.0-§6.8 代码顺序执行;开工前务必通读 §6.9 十大坑点——其中 dryrun 默认值(坑点 1)与伪计数语义(坑点 3)覆盖了新手事故的大多数。
§1.2 战略价值分析
范式开创维度:2017 年之前,每个微生物组研究各自跑管线、各自报丰度,“同一物种在不同论文里的丰度不可比"是领域公认的元问题。curatedMetagenomicData 首次把"统一重处理 + 人工策划元数据 + 包管理器分发"三件事打包:它证明了公共组学数据可以像软件包一样版本化、可复现地"安装”。这套思路后来被 recount3(RNA-seq)、MetaSRA 等项目借鉴,可以说它定义了"二次策划数据资源"(second-stage curation)这一范式在微生物组领域的标杆。
生态推动维度:围绕 cMD 生长出的 Bioconductor 微生物组生态是它最大的护城河——MMUPHin(批次校正与 meta 分析)、mia/miaverse(多样化变换与可视化)、SIAMCAT(微生物组机器学习与跨数据集验证)、Maaslin2(差异丰度)、lefser(富集分析)、BugSigDB(差异丰度签名数据库,2023 年 Nature Biotechnology 论文)全部原生支持 TreeSummarizedExperiment 输入。想在这个生态里做研究,cMD 几乎是事实上的默认数据底座;官方还通过 OpenEpiEdu 等课程项目持续供给教学场景。
临床影响维度:cMD 的五项结直肠癌研究队列(FengQ_2015、HanniganGD_2017、VogtmannE_2016、YuJ_2015、ZellerG_2014)已成为菌群诊断标志物研究的"公共验证场"——Thomas 等(2019,Nature Medicine)与 Wirbel 等(2019,Nature Medicine)两篇里程碑式 CRC meta 分析都以这批队列为基础,确立了跨队列菌群标志物可迁移性的讨论框架。cMD3 论文进一步把口腔-肠道易位确立为跨疾病共享的失调信号(27/30 项疾病研究一致),为"菌群失调程度"提供了可复用的量化指标。
§1.3 横向对比
| 数据集 | 样本规模 | 模态 | 分发方式 | 核心差异化 |
|---|---|---|---|---|
| curatedMetagenomicData | 22,588 样本 / 93 研究 | 鸟枪法宏基因组(物种+功能轮廓) | R / Bioconductor / ExperimentHub | 统一管线重处理 + 人工策划元数据 + 每周更新,跨研究可比性最强 |
| HMP1-II(human microbiome project) | 数千样本(多部位) | 鸟枪法 + 16S + 宏转录组 | SRA/已发表补充文件 | 多身体部位参考图谱,但无统一二次分发 API,元数据需自行整理 |
| GMrepo / MicrobiomeDB | 数万样本级 | 16S + 鸟枪法 | Web 查询界面 | 浏览器检索友好,但缺少可编程的一键数据对象与统一重处理 |
| QIITA / curatedSarcoglobal | 数万样本 | 16S 为主 | Web + API | 16S 生态位强;鸟枪法功能定量与人工策划元数据弱于 cMD |
| ibdmdb(HMP2 IBD 队列) | 约 1,700 万美元投资的纵向队列 | 多组学纵向 | 逐文件下载 | 纵向深度无敌(多时间点多组学),但单队列、无统一封装;cMD 已收录其样本 |
| recount3(对照理解) | 7 万+ RNA-seq 样本 | 转录组计数 | R / Bioconductor | 同为"统一重处理 + 包分发"范式的转录组版本,方法论同源 |
结论:如果研究问题是"某疾病与肠道菌群的关联能否跨研究复现",cMD 是唯一能在一小时内完成从取数到批校正全流程的开放资源;若需要原始 reads 自选管线、菌株分辨率或非粪便部位深度数据,则需回到 EBI/NCBI 归档或专项研究。
§1.4 适用与不适用场景
适用场景:
- 跨研究疾病关联发现与 meta 分析(CRC、IBD、T2D 等 142 种策划状态);
- 微生物组机器学习基准与跨数据集泛化实验(配合 SIAMCAT 的留一研究验证);
- 人口学-菌群关联量化(性别、年龄、BMI——cMD3 论文已给出参考目录);
- 纵向与家庭微生态研究(2,599 名受试者、1,609 户家庭的子集);
- 组成性数据分析(CoDA)教学:CLR、ALR 变换、Dirichlet 多项式增广的最佳练习场;
- 差异丰度签名复用与比对(与 BugSigDB 签名库联动)。
不适用场景:
- 需要原始 reads 或自定义上游管线的分析(cMD 只分发定量结果;请去 EBI/NCBI);
- 菌株级流行病学、传播链追踪或功能验证(无菌株分离物,MetaPhlAn 3 的株级分辨率有限);
- 宿主基因组-微生物组联合分析(无配对宿主 SNP 数据);
- 非粪便部位的深度研究(93% 样本为粪便,口腔/皮肤等其他部位样本量有限);
- 中国人群特异性推断(样本以欧美与东亚公开研究为主,但地理与饮食混杂未统一记录)。
§1.5 术语速查表
| 术语 | 原文/全称 | 在本条目语境中的含义 |
|---|---|---|
| 鸟枪法宏基因组 | shotgun metagenomics | 对环境/样本中全部微生物 DNA 随机打断测序,可分辨到物种级(区别于只测 16S rRNA 基因的扩增子测序) |
| 物种相对丰度 | relative abundance | 某物种 reads 归一化后占样本的比例(%),cMD 中每样本列和为 100,是组成性数据 |
| 标记基因 | marker gene | MetaPhlAn 参考库中某物种独有的基因家族,用于从混合 reads 中识别该物种的存在与丰度 |
| 基因家族 | gene family (UniRef90) | HUMAnN 3 的功能定量单位:按 UniRef90 蛋白同源簇聚合的基因丰度(RPK 单位) |
| 代谢通路 | metabolic pathway (MetaCyc) | HUMAnN 3 按 MetaCyc 数据库聚合的通路丰度/覆盖率,表示群落的功能潜力 |
| 组成性数据 | compositional data (CoDA) | 各分量受"总和为常数"约束的数据(如相对丰度),必须经 CLR/ALR 等对数比变换后才能做常规多元统计 |
| CLR 变换 | centered log-ratio transform | 每个特征丰度除以该样本几何均值后取对数,把组成性数据映射到欧氏空间的标准操作 |
| TSE | TreeSummarizedExperiment | Bioconductor 数据容器:特征×样本矩阵 + 行系统发生树 + 列样本元数据,cMD3 的标准对象类型 |
| ExperimentHub | ExperimentHub | Bioconductor 的实验数据分发服务,cMD 资源经它按需缓存、随 release 快照冻结 |
| 留一研究验证 | leave-one-study-out | 训练用 n-1 项研究、测试用第 n 项的评估方式,微生物组跨队列泛化性的金标准 |
| 去批次 | batch correction | 用统计方法(如 MMUPHin)去除研究/平台等技术因素引入的系统性偏移,同时保留生物学变量 |
| OES | oral enrichment score | cMD3 论文提出的口腔富集分数:305 个典型口腔物种在肠道样本中的相对丰度加和,衡量口腔-肠道易位程度 |
| 失调 | dysbiosis | 菌群组成偏离健康稳态的状态;在 cMD 语境中常用 OES、多样性下降、条件致病菌富集等可量化指标近似 |
| 差异丰度签名 | differential abundance signature | 一组在某条件下显著富集/耗竭的物种列表;BugSigDB 收集文献中已发表的此类签名供比对 |
§2 医学背景
§2.1 微生物组与疾病:从"失调"到可量化信号
人体肠道定殖着数以万亿计的微生物,其组成(菌群结构)与多种疾病状态相关。过去十年的鸟枪法宏基因组研究反复确认了几条主干事实:结直肠癌患者肠道中产丁酸菌减少而口腔源条件致病菌(如 Fusobacterium nucleatum)富集;炎症性肠病(IBD)伴随菌群多样性下降与兼性厌氧菌扩张;2 型糖尿病与特定胆汁酸代谢通路相关的菌群改变相关。但单研究样本量普遍只有 50-200 例,效应量小、方法学差异大,任何单一队列的"疾病签名"都难以直接外推——这正是 cMD 存在的医学理由:把几十个病例-对照研究放到同一把尺子下,才能区分"疾病信号"与"队列噪音"。
cMD3 论文(2025)用这把"统一的尺子"得到了三个有医学含义的结论:第一,性别、年龄、BMI 各自与数百到上千个微生物特征稳健关联(性别 102 个物种 + 15 条通路 + 226 个 KO;年龄 91 个物种 + 1,991 个功能特征;BMI 195 个物种 + 1,018 个功能特征),这些人口学关联是任何疾病分析都必须调整的混杂底噪;第二,口腔菌群在肠道中的富集程度(oral enrichment score,基于 305 个典型口腔物种的相对丰度构造)在 30 项疾病研究中的 27 项显著升高(P = 8.4×10⁻⁶),提示"口腔-肠道易位"是跨疾病共享的失调信号;第三,这些关联效应量普遍"温和但广泛共享"——对临床转化的合理预期是风险分层与辅助判读,而非独立诊断。
§2.2 疾病锚定:ICD-11 与 SNOMED CT
cMD 的 141 列元数据中,disease 与 study_condition 字段记录了 142 种策划健康状态。下表锚定本条目高频讨论疾病的国际编码:
| 疾病 | ICD-11 编码 | SNOMED CT | cMD 样本量 | 代表研究 |
|---|---|---|---|---|
| 结直肠癌(CRC) | 2B70 恶性肿瘤:结肠 | 363406005 Malignant tumour of colon | 1,650 | FengQ_2015、ZellerG_2014、VogtmannE_2016、YuJ_2015、HanniganGD_2017 |
| 溃疡性结肠炎(UC) | DD70 | 64566001 Ulcerative colitis | IBD 合计 3,278 | HMP2/ibdmdb、FranzosaEA_2019 |
| 克罗恩病(CD) | DD71 | 34000004 Crohn disease | (含于 IBD) | HMP2/ibdmdb、SchirmerM_2018 |
| 2 型糖尿病(T2D) | 5A11 | 44054006 Diabetes mellitus type 2 | 3,439 | QinJ_2012、KarlssonFH_2013 |
| 肝硬化 | DB93 | 13920003 Liver cirrhosis | 数百级 | QinN_2014 |
| 肥胖/代谢综合征 | 5B80/5B81 | 162864005 / 238131007 | 数百级 | LeChatelierE_2013 等 |
编码使用注意:cMD 元数据本身不含 ICD-11/SNOMED 编码——上述映射是千方病案医数集为便于临床信息学对接而建立的参考锚点。原始 disease 字段使用自由文本标签(如 “CRC”、“UC”、“T2D”、“lean”、“obese”),跨研究对齐时务必以各源论文的入组标准(而非字段名)为准——同写 “control” 的两组人可能来自完全不同的排除标准(详见 §6.9 坑点 6)。
§2.3 关联结果的临床解释边界
在 cMD 上做疾病-菌群分析时,临床解读须守住三条边界:其一,绝大多数队列是病例-对照横断面设计,关联方向不可判——是疾病改变菌群,还是菌群 predispose 疾病,数据本身无法回答;其二,病例通常接受过治疗干预(抗生素、化疗、饮食调整),观察到的"疾病签名"可能是"治疗签名";其三,效应受人口学混杂强烈影响,cMD3 论文的人口学关联目录(§2.1)应当作为任何疾病模型的强制协变量清单使用。微生物组 AI 研究的正确姿势是:把 cMD 当作"假设生成与验证基础设施",把临床落地留给前瞻性、干预性研究。
§2.4 关键疾病的菌群证据地图
以下四类疾病是 cMD 疾病队列中样本量最大、文献最密集的方向,也是新方法论文最常用的基准题。逐条给出"已确立的公共发现 + cMD 上的对应素材",供设计分析时快速定位:
- 结直肠癌(CRC,1,650 样本,五项研究):跨人群最稳健的发现是口腔源条件致病菌的富集——Fusobacterium nucleatum 及其共生的口腔链球菌/啮齿柠檬酸杆菌类群在肿瘤患者粪便中反复升高,同时常见产短链脂肪酸菌(如 Faecalibacterium、Bifidobacterium 等)的耗竭;Thomas 2019 与 Wirbel 2019 两篇跨队列 meta 分析(§8.2)确认了这组签名的中西人群可迁移性,但也确认了效应量随队列批次缩水。在 cMD 上,任何新的 CRC 标志物都应先通过这五项研究的留一外推再谈泛化;
- 炎症性肠病(IBD,3,278 样本,含纵向):活动期 IBD 的菌群结构以多样性下降、兼性厌氧菌(肠杆菌科)扩张、专性厌氧菌(Roseburia 等)缩减为特征;HMP2/ibdmdb 纵向子集(cMD 已收录)让"菌群波动是否先于 flare"这类时序问题成为可能——横断面研究只能给相关性,纵向数据才能讨论先后;
- 2 型糖尿病(T2D,3,439 样本):QinJ_2012(中国)与 KarlssonFH_2013(瑞典)两大陆际队列确立了 T2D 相关菌群 signatures 的可重复性讨论——两研究共有的判别特征有限,提示人群特异性(饮食结构、用药背景)强于共享信号;在 cMD 上复算这对队列是"检验你的方法是否对人群混杂稳健"的经典练习;
- 肝硬化(数百样本,QinN_2014):肝硬化肠道菌群以口腔菌入侵肠道为显著特征——这一单病种发现正是 cMD3 论文把"口腔-肠道易位"推广为跨疾病 OES 指标(30 项研究中 27 项显著)的概念先声。
使用提醒:上述定性结论是文献共识层面的"证据地图",不构成对任何单项效应量的承诺。效应方向与大小必须在所选研究组合上重新估计——这正是 cMD 统一管线的价值所在。
§2.5 人口学协变量:性别、年龄与 BMI 的医学含义
cMD3 论文的人口学关联目录(§8.1)不只是"副产品",它是任何疾病分析的医学混杂控制基线。三组协变量各有明确的生物学机制,也是最容易伪装成"疾病信号"的底噪:
- 性别(19,751 样本有值):性激素环境与免疫调控的性别二态性会映射到菌群组成;cMD3 目录中 102 个物种、15 条通路、226 个 KO 与性别显著关联——忽略性别的疾病模型会把这些差异记到"疾病"头上;
- 年龄(21,213 样本有值):菌群随年龄经历婴儿定殖、成年稳定、老年衰退三个阶段,91 个物种与 1,991 个功能特征随年龄变化——CRC、心血管等疾病队列天然年龄偏高,年龄不调整则"疾病签名"大概率是"老龄签名";
- BMI(12,826 样本有值,56.8%):肥胖与菌群能量收获能力相关(LeChatelierE_2013 的经典发现),195 个物种与 1,018 个功能特征与 BMI 关联;BMI 缺失近半且缺失非随机(§7.1),调整策略本身就是一个方法学决策。
操作建议:把这三组协变量(加上 study_name 随机效应)作为回归与机器学习的默认协变量集;若做了消融实验,报告"有/无人口学调整"的效应量差异——审稿人越来越把它当作微生物组关联研究的标准动作。
§3 数据集规格
§3.1 核心数字总览
- 样本总数:22,588 个(v3.20.0,截至 2026-09);cMD3 论文口径为 22,710 个 / 94 项研究(含 HeQ_2017 的 n=122,与包内口径之差恰好吻合);
- 研究数:93 项(命名规则:第一作者 + 年份,如
FengQ_2015、HMP_2012); - 地理覆盖:42 个国家;
- 身体部位:粪便 21,152 个(93%),其余为口腔、皮肤、鼻腔等部位;
- 元数据覆盖:年龄 21,213 个样本、性别 19,751 个、BMI 12,826 个(56.8%);
- 纵向子集:2,599 名受试者贡献 10,328 个样本,中位采样间隔约 180 天;
- 家庭子集:1,609 户家庭(母婴传递与家庭共居研究);
- 疾病队列:CRC 1,650 / IBD 3,278 / T2D 3,439 个样本,另有肝硬化、心血管、肥胖等共 142 种状态;
- 上游成本:2017 年首版处理约 23 TB reads,cMD3 时代约 52 TB。
§3.2 规模与版本演进时间线
| 版本/代际 | 时间 | 研究/样本数 | 上游管线 | 关键事件 |
|---|---|---|---|---|
| 论文首发(v1.0.0,Bioc 3.6) | 2017-10 | 13 / 2,875 | MetaPhlAn 2 + HUMAnN 2 | Nature Methods 论文(Pasolli et al.)2017-10-31 刊出;ExperimentHub 分发模式确立 |
| v1.x 扩张期 | 2018-2020 | 增至约 57 项研究(期间规模达 5,716 并持续增长) | MetaPhlAn 2 + HUMAnN 2 | 持续收录研究;ExpressionSet 时代对象结构 |
| v1.16.0(Bioc 3.12) | 2020-10 | 57 / 10,199 | MetaPhlAn 2 + HUMAnN 2 | 万级样本里程碑 |
| v1.20.0(Bioc 3.13) | 2021-05 | 57 / 10,199 | MetaPhlAn 2 + HUMAnN 2 | MetaPhlAn 2 时代最终版;此后版本号跳过 v2.0.0(见 §6.9 坑点 2),旧版仍可从 archive 安装 |
| v3.0.0 = cMD3(Bioc 3.15) | 2022-04 | 86 / 20,283 | MetaPhlAn 3 + HUMAnN 3 | 代际重制:全量样本统一重处理、对象迁移到 TreeSummarizedExperiment、元数据 141 列 schema |
| v3.20.0(Bioc 3.23,当前) | 2026-05 | 93 / 22,588 | MetaPhlAn 3 系列 + HUMAnN 3 | sampleMetadata 每周自动重建;cMD3 论文(Nat Commun,2025-12-23 刊出)完成全面 meta 分析 |
版本读取规则:cMD 的资源与 Bioconductor release 绑定——每个 release 的 ExperimentHub 快照冻结了该版本对应的全部数据对象;升级 Bioc 版本(或使用 devel)可能带来物种名映射与数值漂移。做可复现研究时,请把 Bioconductor 版本号写进论文方法学(见 §6.9 坑点 8)。
§3.3 六类数据对象总表
每项研究 × 每类 dataType 生成一个独立对象,六类如下:
| dataType | 上游工具 | 对象类型 | 内容 | 典型用途 |
|---|---|---|---|---|
relative_abundance |
MetaPhlAn 3 | TreeSummarizedExperiment | 物种/支系相对丰度(每样本列和为 100) | 疾病关联、机器学习、CLR 变换(默认选择) |
marker_abundance |
MetaPhlAn 3 | TreeSummarizedExperiment | 标记基因相对丰度 | 菌株级细粒度分析、标记基因指纹 |
marker_presence |
MetaPhlAn 3 | SummarizedExperiment | 标记基因存在/缺失(0/1) | 二值化指纹、存在性检验 |
gene_families |
HUMAnN 3 | TreeSummarizedExperiment | UniRef90 基因家族丰度(RPK 单位) | 功能潜力分析 |
pathway_abundance |
HUMAnN 3 | TreeSummarizedExperiment | MetaCyc 通路丰度 | 代谢功能关联 |
pathway_coverage |
HUMAnN 3 | SummarizedExperiment | 通路覆盖度 | 通路完整性评估 |
选择建议:90% 的场景只用 relative_abundance;做代谢解释用 pathway_abundance;marker_* 与 gene_families 属于进阶用途。注意不同 dataType 之间不能 mergeData() 合并(见 §4.5)。
§3.4 疾病队列构成
- 结直肠癌(CRC,1,650 样本):五项金标准研究——FengQ_2015(中国)、HanniganGD_2017(美国)、VogtmannE_2016(美国 PLCO 队列)、YuJ_2015(中国)、ZellerG_2014(法国/德国)——覆盖东亚与欧美人群,是领域内被引用最多的公共 CRC 宏基因组组合;
- 炎症性肠病(IBD,3,278 样本):含 HMP2/ibdmdb 纵向队列(UC+CD)、SchirmerM_2018、FranzosaEA_2019 等,纵向子集支持发作-缓解轨迹研究;
- 2 型糖尿病(T2D,3,439 样本):QinJ_2012(中国)、KarlssonFH_2013(瑞典)等经典队列,中西人群对比的重要素材;
- 其他:肝硬化(QinN_2014)、心血管疾病(JieZ_2017)、肥胖与代谢(LeChatelierE_2013)、类风湿关节炎、自闭症、居住和家庭队列(1,609 户)等,共 142 种策划状态。
构成特征:疾病队列以病例-对照设计为主(非前瞻队列),病例/对照比例与招募标准逐研究不同;study_condition 字段是跨研究对齐的第一入口,disease 字段提供更细的状态标签。
§3.5 元数据字段覆盖与缺失
141 列元数据的覆盖呈明显的"幂律":sample_id、study_name、body_site、study_condition、disease、country 等核心列接近全覆盖;age(93.9%)、sex(87.5%)覆盖良好;bmi(56.8%)、测序平台、DNA 提取协议、饮食与用药字段覆盖不全甚至大量空白。缺失不是随机的:越早的研究、越非欧美的研究,人口学与临床协变量越稀疏——直接按列筛选"完整案例"会系统性地淘汰整个队列(信息性缺失,见 §7.1 与 §6.9 坑点 6)。
§3.6 sampleMetadata 核心字段分层字典
下表按用途把 141 列中的高频核心字段分组列出(字段名以 sampleMetadata 实际列名为准;完整清单以官方 vignette 的字段说明为准):
| 分层 | 代表字段 | 覆盖情况 | 分析用途与注意 |
|---|---|---|---|
| 标识 | sample_id、study_name、subject_id |
全覆盖 | sample_id 是全局唯一连接键(格式 研究名.编号:SRR/SRS 号);subject_id 是研究内受试者别名,纵向分组划分必用 |
| 设计 | study_condition、disease、body_site |
全覆盖 | 粗/细双标签体系(§2.2);body_site 取值含 stool 等,93% 为 stool |
| 地理 | country |
全覆盖 | 42 国;兼作地理混杂变量与外推范围声明依据 |
| 人口学 | age、sex、bmi、race |
87.5%-93.9%(bmi 56.8%) | cMD3 论文目录的三大协变量即出自这些列;race 覆盖不全,慎用 |
| 家庭/纵向 | family_id、采集时间相关列 |
部分覆盖 | 1,609 户家庭与 2,599 名纵向受试者的分组键(§5.5) |
| 技术 | sequencing_platform、DNA 提取协议相关列 |
部分覆盖 | 批次效应的第二解释源;早期研究常缺失 |
| 质控 | reads_qc_passed、reads_qc_non_microbial、number_reads |
全覆盖 | curation 管线记录的 reads 统计;counts = TRUE 伪计数的深度来源(坑点 3) |
| 归档 | NCBI/ENA accession 相关列 | 全覆盖 | 回 EBI/NCBI 取原始 reads 的检索键(坑点 7 的出口) |
字段使用三原则:第一,任何跨研究分析先 count(study_name, <字段>) 检查该字段在各研究的取值分布与缺失率;第二,不要假设同名字段在不同研究间语义完全一致(尤其疾病相关自由文本);第三,引用元数据时记录获取日期(每周重建,§4.2)。
§3.7 ExperimentHub 缓存与资源管理
cMD 资源通过 ExperimentHub 按需分发,理解其缓存机制能省下大量重复下载时间:
- 缓存位置:默认在用户目录下的 ExperimentHub 缓存;多项目共用一台机器时建议集中重定向到大容量磁盘(
ExperimentHub::setExperimentHubOption("CACHE", path)); - 首次下载:每个"研究 × dataType"资源首次被调用时下载并落盘(单研究 10-100 MB,全量数 GB);之后离线可用;
- 资源标识:每个资源有稳定的 ExperimentHub ID(
dryrun = TRUE返回的清单里就能看到),排查"某研究某 dataType 是否存在"时先 dryrun; - 版本与 release 绑定:缓存内容与所用 Bioc release 的快照对应——升级 release 后同一资源 ID 可能指向更新后的数据版本(坑点 8);
- 清理与重建:缓存损坏(下载中断)时删除对应缓存条目后重调函数即可重建;正式项目建议把缓存目录挂载为只读共享卷,保证团队成员用同一份数据。
# 缓存管理常用操作
library(ExperimentHub)
eh <- ExperimentHub()
setExperimentHubOption("CACHE", "/data/eh_cache") # 重定向缓存目录
# 查询某研究可用资源(dryrun 即可,不落盘)
curatedMetagenomicData("HMP_2012\\..*", dryrun = TRUE)
§4 数据结构详解
§4.1 TreeSummarizedExperiment 对象解剖
cMD3 的核心数据对象是 TreeSummarizedExperiment(TSE)——SummarizedExperiment 的扩展,专为"特征 × 样本"矩阵 + 行系统发生树 + 列样本元数据而生:
assays:一个或多个定量矩阵(行 = 物种/特征,列 = 样本)。relative_abundance对象默认 assay 名为relative_abundance,counts = TRUE时额外(或替换为)提供伪计数 assay;rowData:特征注释——物种名、NCBI 分类 ID(NCBI_id)、Taxonomy Levels(界门纲目科属种逐级丰度聚合视图);colData:样本元数据(该研究范围内的策划列子集);rowTree:物种的系统发生树(基于 MetaPhlAn 参考树),支持 UniFrac 类分析;metadata:对象级注记(源研究、处理参数版本)。
一个"研究 × dataType"就是一个对象;93 项研究的 relative_abundance 是 93 个 TSE,经 mergeData() 合并成一个大 TSE(列 = 全部样本)。
§4.2 sampleMetadata:141 列每周重建的全局目录
sampleMetadata 是一张 22,588 行 × 141 列的 data.frame,是跨研究取样的唯一入口:
- 标识列:
sample_id(全局唯一,格式研究名.编号:SRR号,如HMP_2012.pangoean:SRS013501)、study_name; - 设计列:
study_condition(对照/疾病的粗标签)、disease(细状态)、body_site、country、sequencing_platform; - 人口学列:
age、sex、bmi、race、family_id、subject_id(研究内受试者别名); - 采集列:
collection_date、DNA_extraction_kit等(覆盖不全); - 质量控制列:
reads_qc_non_microbial、reads_qc_passed、number_reads等(curation 管线记录的 reads 统计,是counts = TRUE伪计数的深度来源)。
该表每周由自动化流水线从源文献、源仓库与 curation 后台重建,因此列值可能随周变化——严格可复现的研究应在方法学中记录获取日期或改用 ExperimentHub release 快照(见 §6.9 坑点 8)。
§4.3 行名系统:long / short / NCBI
relative_abundance 的行名有三种风格,由 curatedMetagenomicData() 的 rownames 参数控制:
"long"(默认):完整分类路径,如k__Bacteria|p__Firmicutes|c__Clostridia|...|s__Eubacterium rectale——信息完整但冗长,适合精确引用;"short":仅种级短名,如s__Eubacterium rectale——绘图友好,但同属异源名冲突时需小心;"NCBI":NCBI 分类 ID 字符串,如s__80840——与外部数据库(NCBI Taxonomy、BugSigDB)连接时最稳。
三种行名是同一棵分类树的投影,可用 TSE 的 rowData 转换互通;跨版本比较时 NCBI ID 最抗改名漂移。
§4.4 relative_abundance 的数值语义:百分比、组成性与伪计数
relative_abundance 的每个样本列和恒为 100(百分比组成性数据)。三个直接推论:
- 共线性:n 个物种的丰度被 n-1 个自由度约束——任何"把丰度当独立变量"的回归/PCA 都会出问题,正确姿势是 CLR/ALR 变换(§6.4)或组成性感知模型;
- 零是结构性的:未检出 ≠ 检出为零,丰度低于检出限与生物学缺失不可区分——CLR 前必须做零值处理(pseudocount 或零模型);
counts = TRUE是伪计数:返回值为相对丰度 × 该样本 qc 通过 reads 数后取整——它让需要"计数型"输入的工具(某些差异丰度与机器学习库)能跑起来,但不是真实 reads 计数,从未经过 reads 级的计数不确定性建模,不可用于需要真实计数的统计(如负二项式模型 DESeq2)。这是 cMD 最容易被误用的开关(详见 §6.9 坑点 3)。
§4.5 合并与取样 API:mergeData / returnSamples / curatedMetagenomicData
三个核心函数构成取数层的全部:
curatedMetagenomicData(pattern, dryrun, counts, rownames):按正则取"研究 × dataType"对象列表;dryrun = TRUE(默认!)只返回将下载的资源清单,dryrun = FALSE才真正拉数据(§6.9 坑点 1);mergeData(x):把多个同 dataType 的对象按行(特征)对齐合并为一个大对象;不同 dataType 之间合并会报错——物种矩阵与通路矩阵必须各自合并后在下游拼接;returnSamples(sampleMetadata, dataType):给一段任意筛选过的 sampleMetadata 子集,返回对应样本的数据对象——这是"先选样后取数"工作流(如跨研究取 18 岁以上粪便 CRC 样本)的官方通道。
§4.6 分类层级结构:从界到种的行名语法与聚合视图
MetaPhlAn 3 的 long 行名自带完整分类路径,层与层之间用 | 分隔、每层以 k__/p__/c__/o__/f__/g__/s__ 前缀标记——这套语法让行名本身就成了可解析的注释源:
rn <- rownames(tse)[1:5]
rn # 如 "k__Bacteria|p__Firmicutes|...|s__Eubacterium rectale"
length(rn) # 特征总数(含各级汇总行)
grep("\\|s__", rn, value = TRUE) |> length() # 种级行数
grepl("s__Fusobacterium nucleatum$", rn) |> which() # 精确定位某物种
层级语义:long 行名中既有种级叶节点,也有各层级汇总行(如只到属的 ...|g__Bacteroides)——同一高阶分类会在"属级汇总行"与"其下各种"重复出现,做特征总数统计或求和时务必先按层级拆分,否则双重计数(高阶丰度 + 成员种丰度)是新手常见错误。
- 聚合分析:要在属级/科级层面比较,可按
|拆分 long 行名取目标层级前缀后自行聚合(相对丰度在同一层级内可直接相加);miaverse(mia)生态也提供了基于 rowData 层级注释的聚合与变换工具; - NCBI 行名:
rownames = "NCBI"时行名是s__<NCBI ID>形态,层级信息在 rowData 的注释列中补回——这是连接外部数据库的推荐形态(坑点 10); - 绘图:种级丰度条形图用 short 行名 + 按均值排序;属级以上热图建议先聚合再做 CLR,避免层级混合的组成性失真。
§4.7 与 ExpressionSet 时代的差异(旧脚本迁移)
v1.x 时代返回 ExpressionSet,v3 起全面迁移到 TreeSummarizedExperiment;ExpressionSet 接口已 defunct。旧脚本迁移映射:exprs(eset) → assay(tse, "relative_abundance");pData(eset) → colData(tse);fData(eset) → rowData(tse)。miaverse 生态(mia 包)提供 mia::convert 系列与变换函数,是从旧代码过渡的最短路径。
§5 数据划分与使用建议
§5.1 官方无划分:三种推荐策略
cMD 官方不提供训练/验证/测试划分——因为任何划分方式都强依赖于研究问题。社区实践中有三种主流策略:
- 留一研究外推(leave-one-study-out):训练用 n-1 项研究,测试用第 n 项——微生物组标志物泛化性的金标准评估,SIAMCAT 文档的标准姿势;最严苛但最能暴露"批次即信号"的假泛化;
- 受试者分组划分:在单研究内部按
subject_id分组(GroupShuffleSplit/GroupKFold),保证纵向研究的同一人不同时间点不跨集——防止样本级泄漏; - 固定公开划分:复用已发表基准(如 SIAMCAT 跨疾病基准、cMD3 论文的 meta 分析脚本)的划分,保证与文献可比。
禁止:按样本随机划分跨研究合并数据——同一研究的样本因批次同质性而互相泄漏,测试集 AUROC 将虚高数个百分点(见 §5.3)。
§5.2 泄漏模式:微生物组数据的三种特有泄漏
- 研究级泄漏:合并 93 项研究后随机划分——模型的"疾病判别力"实际上大量来自对研究特异批次指纹(测序平台、地区、饮食结构)的记忆;文献中大量"AUROC 0.95+"的疾病分类器在严格留一研究下掉到 0.65-0.75,就是这个原因;
- 受试者级泄漏:纵向子集(2,599 人 / 10,328 样本)中同一人的样本高度相似——必须按
subject_id分组; - 特征选择泄漏:在全数据上跑完差异丰度/Maaslin2 再"挑选特征"训练模型——特征筛选必须在交叉验证循环内部完成。
§5.3 批次效应:疾病信号与队列混杂的第一混杂源
跨研究比较时,study_name 是最强的批次变量(测序平台、DNA 提取、地理、饮食全部与它共线)。标准处理链路:
- 只合并
relative_abundance(或统一 dataType); - CLR 变换到欧氏空间;
- 用 MMUPHin
adjust_batch()去批次(保留study_condition等设计变量); - 用 PERMANOVA(vegan::adonis2)量化去批次前后
study_name与disease各解释多少方差——若"研究"解释的方差大于"疾病",说明你的疾病信号不可信; - 差异丰度阶段把
study_name作为随机效应(Maaslin2random_effects)或分层 meta 分析(MMUPHinlm.meta())。
§5.4 外部验证建议
- 同疾病跨库:CRC 模型在 cMD 五项研究上留一外推后,再用 SIAMCAT 提供的独立 CRC 集合或新发表文献数据(经同样 CLR 流程处理)验证;
- 跨疾病泛化:SIAMCAT 论文的跨疾病基准(含 CRC、IBD、肝硬化、T2D 等)提供了直接可比的参照系;
- 签名级复用:把发现阶段签名提交比对 BugSigDB(差异丰度签名数据库),检验与既有文献签名的一致性——比重新收集队列便宜得多;
- OES 一致性检查:若研究对象在 cMD3 论文 30 项疾病研究之列,可顺手重算口腔富集分数并与论文方向对照(27/30 显著)——一个近乎零成本的"你的子集处理是否合理"哨兵指标。
- 纵向验证:横断面发现的标志物,在 HMP2/ibdmdb 纵向子集上检验其随疾病活动度波动的轨迹一致性。
§5.5 纵向子集与家庭子集:两类特殊结构的使用模式
cMD 收录的纵向与家庭研究赋予它横断面库少见的两种数据结构,但也各自带来专属的统计陷阱:
纵向子集(2,599 名受试者 / 10,328 个样本,中位采样间隔约 180 天):
- 取数:从 sampleMetadata 按
!is.na(subject_id)与每受试者样本数 ≥ 2 筛出纵向人群,returnSamples()一次取回(§6.2 模板); - 分析:个体内轨迹建模(mixed model:物种丰度 ~ 时间 + 疾病活动度 + (1 | subject_id))或潜变量轨迹类分析;同一受试者的样本必须始终同组(训练/测试不跨受试者,§5.1 策略 2);
- 陷阱:中位间隔约 180 天意味着多数"纵向"是季度级而非周级——不要套用密集采样纵向研究的时序方法(如收敛交叉映射);采样间隔异质性需在模型中显式处理;
- 典型问题:IBD 发作-缓解的菌群波动方向、抗生素暴露后的恢复轨迹、饮食干预的响应类型划分。
家庭子集(1,609 户):
- 取数:按
family_id筛选,家庭研究(母婴配对、共居家庭)在元数据中有对应标识; - 分析:家庭成员间菌群共享度量化(家内 vs 家间 Bray-Curtis 距离对比)、母婴垂直传递的物种级溯源、共居时长与菌株共享的关系;
- 陷阱:家庭成员天然共享环境、饮食与地理——家庭聚类效应与"研究/地区"批次完全混淆,单靠去批次无法分离;结论应限定为"共享环境下的组成相似性";
- 典型问题:生命早期菌群定殖来源、家庭共居对成人菌群的重塑幅度。
两类子集共同注意:subject_id/family_id 是研究内别名,跨研究合并后必须连同 study_name 一起构造复合键,防止不同研究内部编号撞车。
§5.6 样本量与统计功效:meta 分析的规模参考
设计分析前用以下量级判断"你的研究组合够不够"(经验量级,供规划参考,非承诺值):
- 差异丰度(Maaslin2/MMUPHin):单研究 < 50 病例 + 50 对照时效应估计极不稳定;跨研究合并到每组 ≥ 200 才能支撑"物种级"结论,通路级(特征更少)可放宽到每组 ≥ 100;
- 分类建模(SIAMCAT):每组 ≥ 100 的合并集才值得训练;留一研究外推的 AUROC 波动随 held-out 研究样本量剧烈变化——报告性能时必须给出每折的样本构成;
- meta 分析(lm.meta):纳入研究数 ≥ 5 才有像样的异质性评估(I²);两项研究之间的"合并"本质上是验证性比较,不是 meta 分析;
- 纵向轨迹:单受试者 3 个时间点以下只能做个体内描述;群体轨迹结论需要 ≥ 50 名多时间点受试者;
- 人口学关联:cMD3 论文目录的量级(性别 19,751 / 年龄 21,213 / BMI 12,826 样本)意味着亚组分析(如"按 BMI 分层的疾病关联")在大合并集上才可行——小组合做同类分析会碎成噪音。
反向应用:这些量级也用来审查文献——一篇声称在 cMD 某单研究 60 样本上发现"稳健菌群签名"的论文,应默认要求外部复现(§5.4)。
§6 AI 就绪指南
§6.0 环境与安装
环境要求:R ≥ 4.1.0(以所用 Bioconductor release 的 DESCRIPTION 为准);建议 RStudio + 至少 8 GB 内存(全量合并对象约需数 GB 内存);ExperimentHub 缓存目录默认在用户目录(可经 ExperimentHub::setExperimentHubOption("CACHE", path) 重定向到大容量磁盘)。
# 标准安装(当前 release)
if (!require("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install("curatedMetagenomicData")
# 核心依赖随装:ExperimentHub / TreeSummarizedExperiment / mia / MMUPHin 按需
BiocManager::install(c("mia", "MMUPHin", "SIAMCAT", "Maaslin2"))
需要 MetaPhlAn 2 时代旧数据(与老文献对齐)时,从 Bioconductor archive 安装 v1.20.0(对应 Bioc 3.13):
# 方式一:指定旧 Bioc release 版本号
BiocManager::install("curatedMetagenomicData", version = "3.13")
# 方式二:remotes 精确锁定
remotes::install_version("curatedMetagenomicData", version = "1.20.0")
首次调用任何数据函数时 ExperimentHub 会下载并本地缓存对应资源(单研究 10-100 MB),首次下载后离线可用。
§6.1 浏览元数据:从 sampleMetadata 开始
先看目录、再取数据是 cMD 的正确打开方式:
library(curatedMetagenomicData)
library(dplyr)
sm <- sampleMetadata # 22,588 x 141,每周自动重建
sm |> count(study_name, sort = TRUE) # 每项研究的样本数
sm |>
filter(body_site == "stool",
study_condition %in% c("CRC", "control"),
age >= 18) |>
count(study_name, disease) # CRC 五项研究候选样本
常用筛选维度:body_site(粪便 93%)、study_condition、disease、country、age、sex、bmi、family_id(家庭研究)。把筛选结果传入 returnSamples() 即可一步拿到数据对象(§6.2)。
§6.2 获取数据:dryrun 默认陷阱与正确取数
# 第一步:dryrun(默认)只返回资源清单,不下载任何数据!
curatedMetagenomicData("ZellerG_2014.relative_abundance", dryrun = TRUE)
#> 返回一个字符串列表(资源名 + ExperimentHub ID),用于预览
# 第二步:dryrun = FALSE 才真正下载并返回 TreeSummarizedExperiment 列表
tse_list <- curatedMetagenomicData("ZellerG_2014.relative_abundance",
dryrun = FALSE, counts = FALSE)
tse <- tse_list[[1]]
dim(tse) # 特征数 x 样本数
assayNames(tse) # "relative_abundance"
head(colData(tse)$disease) # 样本级疾病标签
正则匹配支持多研究:"FengQ_2015|ZellerG_2014|VogtmannE_2016"。注意:dryrun 默认值为 TRUE,忘改是新手第一坑(详见 §6.9 坑点 1)。
"先选样后取数"的官方通道:
meta_sub <- sampleMetadata |>
filter(body_site == "stool", study_condition %in% c("CRC", "control"),
study_name %in% c("FengQ_2015", "HanniganGD_2017", "VogtmannE_2016",
"YuJ_2015", "ZellerG_2014"))
tse <- returnSamples(meta_sub, "relative_abundance") # 一行拿到跨研究对象
§6.3 行名与伪计数开关
tse <- curatedMetagenomicData("ZellerG_2014.relative_abundance",
dryrun = FALSE,
counts = TRUE, # 伪计数(§6.9 坑点 3)
rownames = "short")[[1]] # long / short / NCBI
assay(tse, "counts")[1:3, 1:3] # 伪计数矩阵(相对丰度 x reads 取整)
rowData(tse)$NCBI_id[1:5] # NCBI 分类 ID,连接外部库的稳定键
经验法则:关联分析用默认 counts = FALSE(百分比 + CLR);喂给要求"计数矩阵"的第三方库时才开 counts = TRUE,并在论文中如实报告其伪计数性质;物种名要跨库比对就用 rownames = "NCBI"。
§6.4 合并、CLR 变换与组成性增广
library(mia)
# 1) 合并同 dataType 的多个研究(特征按行对齐)
tse_list <- curatedMetagenomicData(
"FengQ_2015|HanniganGD_2017|VogtmannE_2016|YuJ_2015|ZellerG_2014.relative_abundance",
dryrun = FALSE)
tse_crc <- mergeData(tse_list) # 5 项 CRC 研究的大 TSE
# 2) 零值处理 + CLR 变换(进入欧氏空间,供 PCA/回归/ML)
tse_crc <- addAssay(tse_crc,
transformAssay(tse_crc, assay.type = "relative_abundance",
method = "clr", pseudocount = 1),
"clr")
对组成性零膨胀的严格模拟增广(把"未检出"当作低丰度检测不确定性建模):
library(MCMCpack)
p <- assay(tse_crc, "relative_abundance")[, 1] / 100 # 首样本丰度向量
# 以深度 10,000 reads 的 Dirichlet 多项式语义重采样 200 次
sim <- MCMCpack::rdirichlet(200, p * 10000) * 100 # 200 个合成组成性样本
要点:CLR 前的 pseudocount 选择(0.5、1 或丰度的一半检测限)会改变小丰度物种的排序——敏感性分析应报告至少两种取值;rdirichlet 的 depth 缩放参数(此处 10,000)模拟的是不同测序深度下的采样噪声。
§6.5 MMUPHin 批校正与分层 meta 分析
library(MMUPHin)
# 1) 跨研究去批次(在 CLR 或伪计数 assay 上)
adj <- adjust_batch(tse_crc,
assay_name = "clr",
batch = "study_name",
covariates = c("study_condition")) # 保留疾病信号
assay(tse_crc, "clr_adj") <- adj$feature.adjusted
# 2) 分层 meta 分析:每研究内拟合 + 随机效应合并
mma <- lm.meta(tse_crc,
exposure = "study_condition",
batch = "study_name",
covariates = c("age", "sex"),
random.effects = "subject_id")
mma$meta # 合并后的物种级效应与 I^2
解释规则:lm.meta 输出中 I² 高的物种提示跨研究效应异质——通常是混杂(地区/药物)而非噪声;PERMANOVA 方差分解(vegan::adonis2,对 clr_adj 距离矩阵)应在去批次前后各跑一次,量化批次的相对贡献。
§6.6 SIAMCAT:微生物组机器学习与留一研究验证
library(SIAMCAT)
sc <- siamcat(feat = tse_crc, # 直接接受 TSE
label = "study_condition", # CRC vs control
meta = as.data.frame(colData(tse_crc)))
sc <- filter.features(sc, filter.method = "abundance", cutoff = 1e-04)
sc <- normalize.features(sc, norm.method = "clr.std")
sc <- create.data.split(sc) # 默认按样本;严格场景请改按 study 分组
sc <- train.model(sc, method = "lasso", nfolds = 10)
sc <- make.predictions(sc)
sc <- evaluate.predictions(sc) # AUROC / AUPRC
跨研究泛化的正确做法:不要用 create.data.split 的默认随机划分;改为对每项研究循环——siamcat 接受单研究训练、make.predictions 指定另一研究做外部测试(SIAMCAT 文档的 cross-validation on study level 教程),这正是该工具为 cMD 类数据设计的核心能力。
§6.7 Maaslin2:带随机效应的差异丰度
library(Maaslin2)
input_df <- as.data.frame(t(assay(tse_crc, "clr_adj"))) # 特征 x 样本 → 样本 x 特征
meta_df <- as.data.frame(colData(tse_crc))[, c("sample_id", "study_condition",
"age", "sex", "study_name", "subject_id")]
fit <- Maaslin2(input_df, meta_df,
output = "crc_maaslin2",
transform = "AST", # 反正弦平方根,适配相对丰度
fixed_effects = c("study_condition", "age", "sex"),
random_effects = c("study_name"), # 研究作为随机效应
min_abundance = 0.0, min_prevalence = 0.1)
cMD3 论文的关联目录(性别 102 物种 + 15 通路 + 226 KO;年龄 91 物种 + 1,991 功能;BMI 195 物种 + 1,018 功能)就是用此类模型在全库上生成的——你的疾病模型应至少纳入这三组人口学协变量。
§6.8 最小端到端 Pipeline(复制即用)
## cMD 最小工作流:5 项 CRC 研究 → 合并 → CLR → 去批次 → 留一研究 AUROC
library(curatedMetagenomicData); library(mia); library(MMUPHin)
studies <- c("FengQ_2015", "HanniganGD_2017", "VogtmannE_2016", "YuJ_2015", "ZellerG_2014")
tse <- mergeData(curatedMetagenomicData(
paste0(studies, ".relative_abundance", collapse = "|"), dryrun = FALSE))
tse <- transformAssay(tse, assay.type = "relative_abundance",
method = "clr", pseudocount = 1)
tse <- adjust_batch(tse, assay_name = "clr",
batch = "study_name", covariates = "study_condition")
# 随后对每个 held-out study 运行 SIAMCAT 外部预测(§6.6 模板)
§6.9 常见坑点
⚠️ 坑点 1:dryrun 默认为 TRUE——以为拿到了数据其实只是文件清单(分类:工程陷阱)
问题:
curatedMetagenomicData()的dryrun参数默认TRUE,只返回将要下载的资源名与 ExperimentHub 编号清单,不拉任何数据。新手把返回值当数据对象继续操作,直接在字符向量上assay()报错。症状:返回值打印出来是一串
"ZellerG_2014.relative_abundance"字符;assay()/colData()报 “non-numeric argument” 或对象类型错误。解决:显式传
dryrun = FALSE获取真实对象;养成"先 dryrun 预览资源、再 FALSE 取数"的两步习惯,还能借 dryrun 确认正则匹配到了预期的研究数量。参考:官方 vignette “Accessing curated metagenomic data” 章节;
?curatedMetagenomicData帮助页参数表。
⚠️ 坑点 2:版本号跳过 2.0.0——v1.x 与 v3.x 数据不可混用(分类:版本陷阱)
问题:cMD 没有 v2.0.0:MetaPhlAn 2 时代停在 v1.20.0,下一代直接以 v3.0.0 发布以对齐 MetaPhlAn 3/HUMAnN 3 的"3"。v1.x 的物种丰度(MetaPhlAn 2 参考库、物种名)与 v3.x(MetaPhlAn 3)数值与命名都不同——把老版本数据和新版本数据
mergeData()或放同一模型里,等于把两套方法学的结果混合。症状:
mergeData()行名对不上、合并后特征数暴增;文献复现时物种效应方向相反;同一物种在不同样本里查无此行。解决:确认论文对齐哪代管线(2022 年前的研究用 v1.x/MetaPhlAn 2,之后用 v3.x);需要旧数据就从 Bioc archive 装 v1.20.0,但在独立会话/容器中与 v3.x 隔离;跨代比较只能做定性方向性对照,不能定量合并。
参考:Bioconductor NEWS(v3.0.0 代际说明);cMD3 论文 methods。
⚠️ 坑点 3:counts=TRUE 给的是伪计数,不是真实 reads 计数(分类:统计陷阱)
问题:
counts = TRUE的返回值 = 相对丰度 × 该样本 qc 通过 reads 数后取整。它满足"计数矩阵"的形式输入要求,但没有经过 reads 级计数建模,计数不确定性(尤其低丰度物种)完全失真;喂给 DESeq2 等负二项式模型会产生虚假的显著性。症状:低丰度物种的离散度异常小;DESeq2 结果与 CLR 版 Maaslin2 结果矛盾;审稿人指出"counts 来源不明"。
解决:组成性/关联分析用默认百分比 + CLR(mia::transformAssay);需要"计数形态"的工具输入时开
counts = TRUE但在方法学中写明 pseudo-count 性质;需要真实计数请回 EBI 归档取原始 reads 自行定量。参考:官方 vignette counts 参数说明;sampleMetadata 的
reads_qc_passed列(深度来源)。
⚠️ 坑点 4:组成性数据直接进 PCA/回归——和为 100 的共线性陷阱(分类:统计陷阱)
问题:
relative_abundance每样本列和恒为 100,物种间完全共线;对原始百分比跑 PCA、k-means 或普通线性回归,结果由数据第一主成分(近似"总丰度的约束")主导,物种间相关性被扭曲,"优势菌"结论可能纯属几何伪影。症状:PCA 第一轴解释率异常高;两个明显负相关的物种其实是约束制造的相关;模型系数对特征子集选择极其敏感。
解决:CLR 变换后再做一切多元分析(
mia::transformAssay(method = "clr", pseudocount = 1));零值先处理(pseudocount 或 Dirichlet 增广 §6.4);差异丰度用 AST 变换的 Maaslin2 或 ANCOM-BC 等组成性感知方法。参考:Gloor et al. 2017 组成性数据分析综述;miaverse 教程 transformation 章节。
⚠️ 坑点 5:跨研究合并不去批次——疾病信号被研究指纹淹没或冒充(分类:统计陷阱)
问题:
study_name与测序平台、DNA 提取、地理、饮食完全共线。合并 93 项研究直接训练分类器,模型学到的主要是"哪个研究"而非"哪种病";反之,批次噪声也可能把真实微弱疾病信号完全遮蔽。症状:随机划分 AUROC 0.9+,留一研究外推跌至 0.6x;PERMANOVA 中
study_name解释方差大于study_condition;meta 分析 I² 接近 100%。解决:合并后先 CLR 再
MMUPHin::adjust_batch()(covariates 保留疾病);PERMANOVA 方差分解前后对照;评估永远用留一研究或按研究分组划分(§5.1-§5.3)。参考:MMUPHin 文档与 cMD3 论文 meta 分析流程;Thomas 2019 / Wirbel 2019(Nat Med)CRC 跨队列处理范式。
⚠️ 坑点 6:control 不等于 control——142 种状态与标签失衡(分类:标签理解)
问题:93 项研究的 “control” 各有排除标准(有的排除了抗生素使用、有的按年龄/地区匹配、有的只是"非该病");
disease字段 142 种状态中大量低频类别(个位数样本)与重叠状态(如 UC/CD/IBD 粗细不一)。直接把 control 合并当负类、或把罕见状态喂进多分类器,结果不可解释。症状:多分类模型混淆矩阵集中在头部类别;对照组的地区/年龄分布与病例组系统性不同;“control” 亚群内部聚类按国家而非生物学分开。
解决:用
study_condition做粗标签、disease做细标签,并在分析前对每项研究核对源论文入组标准;罕见状态并入"其他"或剔除;任何病例-对照分析强制调整 age/sex/BMI(cMD3 论文目录)与研究(随机效应);报告各研究的病例/对照构成表。参考:sampleMetadata 字段说明;cMD3 论文 Fig. 元数据覆盖统计;BugSigDB 签名比对。
⚠️ 坑点 7:没有原始 reads——上游管线版本被锁死(分类:资源边界)
问题:cMD 只分发定量结果(丰度矩阵),不分发 reads。你不能用 MetaPhlAn 4 重跑、不能做 reads 级 QC 调整、不能换参考数据库;物种集合被冻结在 MetaPhlAn 3 参考库里,新命名的物种(如 2023 年后的 Prevotella copri clade 细分)不在其中。
症状:想升级分析器时发现无从下手;物种名在新文献中查不到;审稿要求用最新参考库复算无法满足。
解决:设计阶段就确认 MetaPhlAn 3 分辨率满足需求;需要最新参考库或株级分析时,从 sampleMetadata 的
NCBI_accession/源研究 accession 回 EBI/NCBI 拉原始 reads 自行处理(预计数 TB 级算力);物种名对照用rownames = "NCBI"的 NCBI ID 连接。参考:vignette “Data provenance” 章节;cMD3 论文 upstream processing 说明。
⚠️ 坑点 8:ExperimentHub 快照与 Bioconductor release 绑定——每周更新的元数据让结果悄悄漂移(分类:可复现性)
问题:数据资源随 Bioconductor release 冻结(每半年一版),但
sampleMetadata表每周自动重建、devel 通道滚动更新;同一篇论文写作周期内,元数据行数、列值甚至样本收录都可能变化。不锁定版本的研究在复现时"对不上数"。症状:三个月后 rerun 脚本样本数从 22,588 变成 22,6xx;合作者拿到不同的 sampleMetadata 行数;同一代码在不同 Bioc release 输出不同的合并对象维度。
解决:在 Docker/renv 中锁定 R + Bioconductor release 版本,方法学写明 “curatedMetagenomicData v3.20.0 / Bioconductor 3.23”;跨会话复用实验缓存时用
ExperimentHub::setExperimentHubOption("CACHE", ...)指向固定目录;正式研究把 sampleMetadata 快照(含获取日期)另存为项目内 CSV。参考:Bioconductor release 与 devel 政策;ExperimentHub 缓存文档。
⚠️ 坑点 9:mergeData 不接受不同 dataType——合并前必须统一对象类型(分类:工程陷阱)
问题:
mergeData()只能把同一 dataType 的对象按特征行对齐合并。把relative_abundance与pathway_abundance的对象放进同一个列表合并,或把 v1.x 的 ExpressionSet 与 v3.x 的 TSE 混在一起,直接报错或产生无意义结果。症状:
mergeData()抛出对象类型/assay 名不一致错误;合并后行数异常暴涨(特征集合没有真正对齐)。解决:一次只合并一种 dataType——物种矩阵与通路矩阵各自合并后,在下游用
sample_id按列对齐拼接(或放进 MultiAssayExperiment);合并前统一rownames参数,避免 long/short 混排导致行对齐失败。参考:
?mergeData帮助页;官方 vignette 合并示例。
⚠️ 坑点 10:short 行名的同名冲突与跨版本物种改名漂移(分类:可复现性)
问题:
rownames = "short"只保留种级短名,不同支系(尤其未培养/暂定种的 clade A/B 后缀)可能出现同名行;更隐蔽的是跨 MetaPhlAn 参考库版本,同一物种的命名会漂移(改名、拆分、合并)——用 long 或 short 行名做跨数据集连接时,“查无此行"不等于"数据没有”。症状:合并后特征数比预期多(同名不同支系被当不同行);跨 release 比对时物种行大面积对不上;与外部数据库(BugSigDB、文献签名)比对时命中率异常低。
解决:跨数据集/跨版本的物种级连接一律用
rownames = "NCBI"(NCBI 分类 ID 最抗改名漂移),需要展示时再从 rowData 映射回可读名;报告中说明所用参考库版本与行名方案。参考:官方 vignette rownames 参数说明;NCBI Taxonomy 对应关系。
§6.10 多样性分析与 PERMANOVA 方差分解
alpha/beta 多样性不需要额外工具,vegan 即可完成;PERMANOVA 是判定"批次 vs 疾病谁主导"的标准检验(§5.3 链路第 4 步的落地代码):
library(vegan)
abund <- assay(tse_crc, "relative_abundance") # 特征 x 样本
meta <- as.data.frame(colData(tse_crc))
# 1) alpha 多样性(Shannon)与疾病/协变量的关联
meta$shannon <- diversity(t(abund), index = "shannon")
summary(lm(shannon ~ study_condition + age + sex,
data = meta, na.action = na.omit))
# 2) beta 多样性:Bray-Curtis 或 CLR 空间欧氏距离
bc <- vegdist(t(abund), method = "bray")
# 3) PERMANOVA:疾病与研究各解释多少方差
adonis2(bc ~ study_condition + age + sex + study_name,
data = meta, na.action = na.omit, permutations = 999)
#> 判读:若 study_name 的 R^2 大于 study_condition,
#> 说明疾病信号被批次混杂主导(§6.9 坑点 5)
# 4) 离散度检验:排除"组间位置差实为离散度差"的 PERMANOVA 误判
bd <- betadisper(bc, meta$study_condition)
permutest(bd)
判读要点:PERMANOVA 显著只说明"组间 centroid 有差",离散度不齐(betadisper 显著)时结论会翻车——务必成对报告;study_name 进模型放在疾病之后,检验的是"控制疾病后批次还有多少残差解释力"。
§6.11 与 BugSigDB 签名库联动
BugSigDB 是人工策划的文献差异丰度签名数据库(2023,Nature Biotechnology;§8.3),把你的 cMD 分析结果与文献签名比对,是最便宜的外部验证(§5.4 签名级复用):
# 你的分析结果:Maaslin2 显著富集的物种集合(NCBI ID 或短名)
my_hits <- c("s__Fusobacterium nucleatum", "s__Porphyromonas asaccharolytica",
"s__Peptostreptococcus stomatis", "s__Eubacterium rectale")
# 从 BugSigDB 网站导出 CRC 相关签名的物种列表(CSV/TSV)后读入
sig_crc <- read.delim("bugsigdb_crc_signatures.tsv") # 文献签名物种集合
sig_crc <- unique(sig_crc$species) # 集合 1
sig_pub <- read.delim("bugsigdb_crc_signatures.tsv")
sig_pub <- unique(sig_pub$species) # 富集组/耗竭组分别建集合
# 集合重叠:超几何检验(富集 p 值)
overlap <- length(intersect(my_hits, sig_pub))
universe <- length(unique(c(my_hits, sig_pub)))
phyper(overlap - 1, length(sig_pub),
universe - length(sig_pub), length(my_hits),
lower.tail = FALSE)
操作建议:比对时统一用 NCBI ID(坑点 10);分别对"文献富集组"与"文献耗竭组"做重叠检验,方向一致才算复现;把重叠率与 Jaccard 指数写进结果,比单纯报告 p 值更有信息量。
§6.12 可复现环境锁定:renv + Docker
cMD 的资源随 Bioconductor release 漂移(坑点 8),正式研究必须锁定环境:
# 项目内锁定 R 包版本(renv)
install.packages("renv")
renv::init() # 生成 renv.lock 与项目私有库
renv::snapshot() # 把 curatedMetagenomicData 等版本写入 lock 文件
# 提交 renv.lock 到代码仓库;合作者 renv::restore() 复原
# Docker:镜像内固定 R + Bioconductor 版本(示例标签,按所用 release 选择)
# bioconductor/bioconductor_docker:RELEASE_3_23
# 环境变量 ExperimentHub 缓存指向挂载卷,避免重复下载:
# R_LIBS_USER 与 R -e 'ExperimentHub::setExperimentHubOption("CACHE", "/data/eh_cache")'
清单:方法学应至少报告四要素——R 版本、Bioconductor release、curatedMetagenomicData 包版本(如 v3.20.0)、sampleMetadata 获取日期(或随项目另存的快照文件)。四要素齐全的 cMD 论文在复现审计中的通过率远高于只写"数据来自 cMD"的论文。
§6.13 常见报错速查表
汇总 §6.9 十大坑点与日常使用中最常撞见的报错信息与处理路径:
| 报错/异常现象 | 根因 | 处理 |
|---|---|---|
assay() 报 non-numeric / 对象类型错误 |
dryrun = TRUE(默认)返回的是资源名清单而非数据(坑点 1) |
改传 dryrun = FALSE |
mergeData() 类型/assay 名不一致 |
混合了不同 dataType 或 ExpressionSet 与 TSE(坑点 9) | 同 dataType 分别合并;v1.x 数据在独立环境处理 |
| 合并后特征数暴增、行大面积对不上 | 行名方案混用(long/short/NCBI)或跨参考库版本改名(坑点 10) | 统一 rownames;跨版本连接用 NCBI ID |
| DESeq2 与 CLR 版结果矛盾 | counts = TRUE 伪计数喂了负二项式模型(坑点 3) |
关联分析用百分比 + CLR;需计数形态时如实报告 |
| PCA 第一轴解释率异常高 | 组成性共线性未变换(坑点 4) | CLR 后重做 |
| 随机划分 AUROC 0.9+、留一研究跌至 0.6x | 研究级泄漏(坑点 5) | 换留一研究/分组划分 + MMUPHin 去批次 |
| 多分类混淆矩阵集中在头部类别 | 142 状态低频类别未归并、control 定义不一(坑点 6) | study_condition 粗标签 + 罕见类归并 |
| "查无此物种"但文献确有 | MetaPhlAn 3 参考库冻结,新命名物种缺席(坑点 7) | 用 NCBI ID 连接;需要新参考库回源重跑 |
| 复跑样本数 22,588 → 22,6xx | sampleMetadata 每周重建 / release 漂移(坑点 8) | 锁定 Bioc release + 另存元数据快照 |
| ExperimentHub 下载中断后报缓存错误 | 缓存条目损坏(§3.7) | 删除对应缓存条目重调函数 |
§7 质量评估与局限性
§7.1 偏倚全景
| 偏倚类型 | 表现 | 缓解措施 |
|---|---|---|
| 研究设计偏倚 | 病例-对照为主,前瞻队列稀少,因果方向不可判 | 定位为假设生成;引用纵向子集做方向性探索 |
| 地理与人种偏倚 | 42 国但欧美与东亚研究占比高,非洲/南美样本少 | 分析时报告 country 分布;外推声明限定人群 |
| 身体部位偏倚 | 粪便 93%,其他部位数据量小 | 口腔/皮肤结论标注低置信;或回源研究取数 |
| 信息性缺失 | BMI 仅 56.8% 有值,缺失与研究年代/地区相关 | 不用完整案例法;用多重插补或按层分析并报告 |
| 混杂记录不足 | 抗生素、饮食、用药字段稀疏 | 把不可控混杂写入局限性;敏感性分析 |
| 批次混杂 | 研究与平台/地区/提取协议共线 | MMUPHin 去批次 + 留一研究验证(§5.3) |
| 标签偏倚 | control 定义不一,142 状态粗细不齐 | 逐研究核对入组标准;粗细标签分层使用 |
| 处理版本锁定 | MetaPhlAn 3 参考库冻结,新物种缺席 | 结论限定于参考库物种集合;注明管线版本 |
§7.2 数据质量已知问题
- 上游不可重跑:所有定量结果继承 MetaPhlAn 3 / HUMAnN 3 的已知局限(病毒与真菌覆盖弱、菌株分辨率有限),且无法在 cMD 内修复;
- 元数据质量不均:141 列由人工策划 + 自动重建混合产出,早期收录研究的字段(尤其临床协变量)可靠性低于新收录研究;curation 团队提供 issue tracker 通道(GitHub)供用户报错;
- 伪计数的整数化损失:
counts = TRUE的取整使低深度样本的极低丰度特征信息大量丢失(0 与 1 之间的差异被抹平); - 样本去重边界:同一物理样本可能同时出现在多个分析口径的研究中(如 HMP 多阶段产出),跨研究合并时需用
sample_id与subject_id交叉核查; - v1.x 与 v3.x 的历史包袱:Bioconductor archive 中两代数据并存,文献引用不注明版本即产生不可比引用。
§7.3 与 AI 训练相关的已知风险
- "批次即标签"风险:疾病分类器在小样本研究组合上极易学到研究指纹,文献中大量虚高性能可由此解释——任何基于 cMD 的模型论文都应强制报告留一研究性能;
- 人口学捷径学习:年龄/性别与菌群关联强(cMD3 目录),模型可能通过预测年龄-疾病构成比实现"伪判别"——训练时应显式纳入并在消融实验中量化其贡献;
- 标签泄漏经元数据:
disease相关派生字段(如治疗记录)若进入特征,会把标签间接泄漏给模型——特征审查清单应排除语义上由疾病状态衍生的列; - 跨版本不可比性能:文献间的 AUROC 横向比较必须核对各自的 Bioc release 与管线版本——MetaPhlAn 2 时代的旧结果与 v3.x 的结果放同一张表里比较是常见的评审雷区(坑点 2、坑点 8)。
§7.4 隐私、合规与伦理分析
- 数据本体:cMD 分发的是物种/功能丰度矩阵与样本级元数据,不含原始 reads、不含个体姓名或联系方式;输入本身即来自公开归档(EBI/NCBI)与已发表文献,属于二次策划的公开数据;
- 准标识符风险:年龄 + 性别 + 国家 + 家庭编号的组合仍是准标识符——1,609 户家庭与 2,599 名纵向受试者的子集在极端情况下可被反向定位到原始研究;发布结果时应按聚合口径(如按研究的均值/区间)报告,避免输出单样本级元数据明细表;
- 纵向别名 ID:
subject_id/family_id是研究内别名而非真实标识符,跨研究组合使用时要防止别名体系成为"新身份证"; - 合规义务:包本体 Artistic License 2.0、完全开放;但 93 项上游研究各有原始发表与许可约束,正式使用应逐项引用并遵守其数据政策(§9 引用合规提示);DUO 标签为 PUO/PUB(公开可用、无个体可识别信息);
- AI 训练场景特别提示:用 cMD 训练模型并在论文/产品中发布,属于对公开科研数据的合规再利用,但若模型输出宣称临床决策能力,则进入医疗器械软件监管范畴——数据开放不等于用途免监管。
§7.5 与同类整合资源的质量对比
| 维度 | curatedMetagenomicData | HMP1-II 原始库 | GMrepo | MetaSRA |
|---|---|---|---|---|
| 上游处理 | 全量统一重处理(MetaPhlAn 3 + HUMAnN 3) | 各研究自报或中心化处理,口径不一 | 收录各研究自报定量 | 统一重处理(MetaPhlAn 系列) |
| 元数据策划 | 141 列人工策划 + 每周重建 | 研究自有 schema | 人工策划但列较少 | 结构化改写 SRA 元数据 |
| 分发方式 | R 对象一键 API + release 快照 | 文件下载 | Web 检索 | Web/API |
| 可复现性 | 版本化(包 + Bioc release 双锚点) | 弱(散落补充文件) | 中 | 中 |
| 功能定量 | 有(基因家族 + 通路六类 dataType) | 部分 | 无 | 无 |
| 动态更新 | sampleMetadata 每周、版本半年 | 停更 | 缓慢更新 | 缓慢更新 |
定位总结:cMD 的差异化不在"样本最多",而在"方法学同质性 × 元数据策划深度 × 软件工程化分发"三者的组合——单看任一维度都有对手,组合起来在微生物组领域没有等价物。
§7.6 数据获取的替代与补充路径
当 cMD 满足不了需求时的出口(与坑点 7 呼应):
- 要原始 reads:用 sampleMetadata 中的 accession 列回 EBI/NCBI 归档下载,自行跑最新管线(数 TB 级算力预算);
- 要 16S 数据:cMD 只收鸟枪法,16S 生态请用 QIITA、GMrepo 等专库;
- 要菌株级分辨率:MetaPhlAn 3 株级信息有限,株级分析需回源 reads 跑 strainphlan 类工具;
- 要宿主配对数据:cMD 不含宿主基因组/转录组,需回源研究申请或用受控访问库;
- 要最新收录的研究:cMD 收录有滞后(curation + 重处理周期),追踪最新文献可配合 MetaSRA / 归档检索,但会失去统一管线红利。
质量结论:cMD 的质量短板几乎都不是"策划失误",而是"整合资源的结构性边界"——上游管线冻结、元数据覆盖不均、标签语义不一致。这些边界的应对方案已分别内置到 §5(划分与泄漏)、§6.9(坑点)与下表 DAIMS 的逐项说明中;对使用者而言,读懂边界比修补边界更重要。
§7.7 DAIMS 24 项数据就绪度评估
| # | 检查项 | 状态 | 说明 |
|---|---|---|---|
| 1 | 数据为宽格式(每行一个样本/特征) | ✅ | TSE assays:行 = 特征、列 = 样本,sampleMetadata 行 = 样本 |
| 2 | 有唯一标识符列 | ✅ | sample_id 全局唯一(格式 研究.编号:SRR),可回溯至 ENA/SRA |
| 3 | 无 Unicode 或特殊字符 | ⚠️ | 物种名含拉丁双名与支系后缀(clade A/B),元数据保留多语言来源字符;下游解析需注意 |
| 4 | 无重复行 | ✅ | curation 层去重;同一样本不重复出现在同一 dataType 对象内 |
| 5 | 缺失值已识别并编码 | ✅ | 空白即缺失(NA),vignette 有字段级说明 |
| 6 | 标签列被明确标识 | ✅ | study_condition(粗)与 disease(细)双标签体系 |
| 7 | 已对罕见类别(<3%)进行分组 | ⚠️ | 142 种状态大量低频类别未预分组,需自行归并(坑点 6) |
| 8 | 偏倚评估已完成 | ✅ | cMD3 论文完成人口学关联与 meta 分析级别的偏倚量化;§7.1 汇总 |
| 9 | 有完整的数据字典 | ✅ | 官方 vignette + 函数帮助页 + sampleMetadata 字段说明 |
| 10 | 对"信息性缺失"有明确编码解释 | ⚠️ | BMI 56.8% 覆盖且缺失随年代/地区系统性变化,官方未做 MNAR 建模指引 |
| 11 | 数据采集设备和设置已记录 | ⚠️ | sequencing_platform、提取协议列存在但覆盖不全,早期研究稀疏 |
| 12 | 已移除完全共线性变量 | ⚠️ | 组成性数据天然完全共线(列和为 100),发布形态保留原始组成性结构,变换责任在用户 |
| 13 | 对编码的映射标准已说明 | ✅ | 物种命名锚定 NCBI taxonomy,提供 long/short/NCBI 三种 rowname 方案 |
| 14 | 对时间戳的处理已明确说明 | ⚠️ | collection_date 格式跨研究不一,纵向间隔(中位 180 天)需自行计算 |
| 15 | 训练/验证/测试划分建议已给出 | ❌ | 官方无任何划分;须自行采用留一研究/受试者分组策略(§5.1) |
| 16 | 数据泄漏风险已被讨论 | ✅ | 本条目 §5.2-§5.3 与 §6.9 坑点 5 完整讨论研究级/受试者级/特征选择泄漏 |
| 17 | 标签分布已被分析 | ✅ | CRC 1,650 / IBD 3,278 / T2D 3,439 与 142 状态分布已在 §3.4 量化 |
| 18 | 选择性测量偏倚已被讨论 | ✅ | §7.1 偏倚全景表逐项列出 |
| 19 | 外部验证建议已给出 | ✅ | §5.4 四通道外部验证(跨库/SIAMCAT 基准/BugSigDB/纵向) |
| 20 | 数据更新和版本信息已记录 | ✅ | Bioconductor NEWS 完整版本史;资源与 release 快照绑定;sampleMetadata 更新频率官方声明 |
| 21 | 最小必要预处理脚本已提供 | ⚠️ | 官方提供函数级 API 与 vignette 示例,但无端到端可执行 pipeline 脚本(本条目 §6.8 补位) |
| 22 | 合规使用要求已明确 | ⚠️ | 包为 Artistic-2.0 且完全开放,但 93 项上游研究的引用要求与许可逐研究不同,需用户自行核查 |
| 23 | 多模态对齐方法已说明 | ❌ | 无配套宿主基因组/临床时序/代谢组的对齐方案;仅样本级元数据可关联 |
| 24 | 去标识化方法已被记录 | ✅ | 输入为公开宏基因组与样本级元数据,无个体标识;纵向受试者用别名 ID |
DAIMS 评分:18 / 24
评分解读:良好偏上——标准化与可及性顶级(统一管线、141 列策划元数据、一键 API、版本化分发),扣分集中在组成性数据的固有统计门槛与"整合资源"的结构性边界(无划分、无多模态、无原始 reads)。
对你意味着什么:cMD 的 14 个 ✅ 项几乎全部来自其工程化的分发与策划体系——唯一标识回溯、双标签体系、三种行名方案、版本化 NEWS,这套"数据包管理"体验在微生物组领域无出其右。8 个 ⚠️ 项的共性是"责任转移给了用户":CLR 变换、零值处理、罕见类归并、缺失建模都要自己动手,但社区生态(mia、MMUPHin、SIAMCAT、Maaslin2)为每一步都提供了成熟工具。两个 ❌(无官方划分、无多模态对齐)是定位使然:它把自己定义为"统一重处理的整合层"而非"基准评测集"——如果你的课题恰好需要这两样,要么采用本条目的划分策略自行构建,要么换用专项基准资源。与 MIMIC-III(18.5/24)相比,两者分数接近但短板互补:MIMIC 弱在"年代性陈旧",cMD 弱在"统计门槛与模态边界"。
§8 基准性能与生态
§8.1 cMD3 论文的参考性结果(2025)
cMD3 论文(Manghi et al., Nature Communications, 2025-12-23 刊出)在全库 22,710 样本(论文口径)上完成了迄今最大规模的人体宏基因组 meta 分析,产出三组可复用的参考目录:
- 人口学关联目录:性别关联 102 个物种 + 15 条通路 + 226 个 KO;年龄关联 91 个物种 + 1,991 个功能特征;BMI 关联 195 个物种 + 1,018 个功能特征——任何疾病模型的强制协变量清单;
- 疾病 meta 分析:跨 30 项疾病研究识别出"温和但广泛共享"的疾病相关微生物模式,全部目录随论文开源;
- 口腔富集分数(OES):基于 305 个典型口腔物种在肠道中的相对丰度构造;OES 升高在 30 项疾病研究中的 27 项显著(P = 8.4×10⁻⁶),确立"口腔-肠道易位"为跨疾病共享的失调信号——一个只需相对丰度表即可计算、极难被批次效应完全解释的稳健指标。
方法论含义:OES 的跨疾病一致性展示了"在统一管线上构造简单可解释指标"的力量——它比任何单疾病黑箱分类器更难被批次混杂欺骗,是 cMD 类整合资源最值得模仿的分析范式。
§8.2 CRC 与 IBD 的基准参照
- 结直肠癌:Thomas 等(2019,Nat Med)与 Wirbel 等(2019,Nat Med)以 cMD 收录的五项研究(FengQ_2015、HanniganGD_2017、VogtmannE_2016、YuJ_2015、ZellerG_2014)为核心完成跨队列 meta 分析,确立了 CRC 菌群标志物的跨人群可迁移性讨论;SIAMCAT 论文(Wirbel 等,2021,Genome Biology)进一步提供了跨疾病机器学习基准——"在五项 CRC 研究上留一外推的 AUROC 区间"是检验任何新方法的标准问题;
- IBD:HMP2/ibdmdb 纵向队列(cMD 已收录)支持发作-缓解轨迹建模;cMD3 论文的 IBD meta 分析覆盖 3,278 个样本,是迄今最大的 IBD 宏基因组统一分析之一。
§8.3 生态工具全景
| 工具 | 角色 | 关系 |
|---|---|---|
| mia / miaverse | 变换(CLR/rel. abundance)、可视化、多样性 | cMD 数据的官方下游处理层 |
| MMUPHin | 去批次、分层 meta 分析、异质性发现 | cMD3 论文的分析引擎之一 |
| SIAMCAT | 微生物组 ML 建模与跨数据集验证 | 为 cMD 类数据设计留一研究验证 |
| Maaslin2 | 多协变量差异丰度(固定+随机效应) | cMD3 关联目录的方法 |
| lefser | 富集特征发现(LEfSe 的 R 版) | 与 BugSigDB 签名对接 |
| BugSigDB | 人工策划的差异丰度签名数据库(2023,Nat Biotechnol) | 用 cMD 数据可比对的"文献签名库" |
| OmicsMLRepoR | 多组学 ML 资源仓库接口 | 同一 Waldron Lab 生态的扩展 |
| ExperimentHub | 资源分发与版本化缓存 | cMD 的分发通道本身 |
§8.4 引用与学术影响
- 原始论文(Pasolli et al., 2017, Nature Methods)与 cMD3 论文(Manghi et al., 2025, Nature Communications)合计及生态工具累计引用 2,000+(Google Scholar 保守口径,截至 2026-09);
- 上游重处理成本(2017 年约 23 TB → cMD3 时代约 52 TB reads)使"每个课题组自己重跑一遍"在经济上不可行——cMD 的存在本身改变了领域的成本结构;
- 项目获美国国家癌症研究所(NCI)R01CA230551 资助,是 NCI"微生物组与癌症"数据基础设施布局的一部分。
§8.5 复现 cMD3 论文分析的推荐入口
想从"使用者"升级为"复现者/挑战者",按以下顺序进入:
- 取数复算:用 §6.8 的最小 pipeline 取全库
relative_abundance(注意论文口径 22,710/94 与包内 22,588/93 的 HeQ_2017 差异,§3.1); - 人口学关联复算:按 §6.7 的 Maaslin2 模板(年龄/性别/BMI +
study_name随机效应)在全库重跑,与论文目录(102 物种 + 15 通路 + 226 KO 等数字,§8.1)做方向一致率对比; - OES 重构:按论文定义(305 个典型口腔物种相对丰度加和,§8.1)在 30 项疾病研究中重算 OES,检验"27/30 显著、P = 8.4×10⁻⁶"的可复现性;
- 扩展方向:论文目录之外的状态(142 种中的长尾)、纵向子集的时间维度、家庭子集的共享结构——都是论文未深挖的增量空间。
复现时的方法学锚点:论文用 MMUPHin 做分层 meta 分析(§6.5 模板)、统一 MetaPhlAn 3/HUMAnN 3 管线;数字对不上时先核对研究集合与协变量集,再核对 Bioc release 版本(坑点 8)。
§8.6 研究问题 → 数据子集映射速查表
把常见研究问题直接映射到"应该取哪个子集 + 用哪条 pipeline",作为选题阶段的导航:
| 研究问题 | 数据子集(sampleMetadata 筛选) | 推荐路径 |
|---|---|---|
| 某疾病与肠道菌群的关联能否跨研究复现? | body_site=="stool" + 目标 study_condition,含对照 |
§6.4 合并 + CLR → §6.5 去批次 → 留一研究评估(§6.6) |
| 我的菌群分类器比文献强吗? | 五项 CRC 研究(§3.4)或 SIAMCAT 跨疾病集合 | 留一研究 AUROC 对照 §8.2 基准区间 |
| 口腔-肠道易位在该疾病中是否成立? | 目标疾病研究 + 每研究含口腔样本则并入 | 按 §8.5 重构 OES,对照论文 27/30 |
| 菌群随时间如何变化? | subject_id 非缺失且样本数 ≥ 2(§5.5 纵向) |
mixed model(时间 + 协变量 + (1\ |
| 家庭成员菌群有多像? | family_id 非缺失(§5.5 家庭) |
家内/家间 Bray-Curtis 对比 + PERMANOVA |
| 哪些功能通路(而非法物种)与疾病相关? | 同目标疾病的 pathway_abundance 对象 |
同链路但换 dataType(§4.5 各自合并) |
| 年龄/性别本身如何塑造菌群? | 全库或按 body_site 分层 | §6.7 Maaslin2 模板,对照 §8.1 目录 |
| 批次效应到底多大? | 任意跨研究合并集 | §6.10 PERMANOVA(疾病 vs study_name 方差分解) |
用法:先定位问题行,确认子集样本量过 §5.6 的量级门槛,再沿推荐路径执行;每个环节的坑点提示见 §6.13 速查表。
§9 相关资源与引用
官方资源
- 包主页(含安装与版本):https://bioconductor.org/packages/curatedMetagenomicData/
- 当前 release vignette:https://bioconductor.org/packages/release/data/experiment/vignettes/curatedMetagenomicData/inst/doc/curatedMetagenomicData.html
- ExperimentHub 资源页:https://bioconductor.org/packages/release/data/experiment/html/curatedMetagenomicData.html
- 源码与 issue tracker:https://github.com/waldronlab/curatedMetagenomicData
- BugSigDB(签名比对):https://bugsigdb.org/
- miaverse/mia 教程:https://microbiome.github.io/
- 许可证:Artistic License 2.0(https://opensource.org/license/artistic-2-0/)
BibTeX 引用(按用途选择)
% 1) 资源原始论文(使用任何版本数据都应引用)
@article{pasolli2017accessible,
title={Accessible, curated metagenomic data through ExperimentHub},
author={Pasolli, Edoardo and Schiffer, Lucas and Manghi, Paolo and Renson, Audrey and
Obenchain, Valerie and Truong, Duy Tin and Beghini, Francesco and Malik, Faizan and
Ramos, Marcel and others},
journal={Nature Methods},
volume={14},
number={11},
pages={1023--1024},
year={2017},
doi={10.1038/nmeth.4468}
}
% 2) cMD3 数据论文(使用 v3.x 数据应引用)
@article{manghi2025cmd3,
title={Meta-analysis of 22,710 human microbiome metagenomes defines an oral-to-gut
microbial enrichment score and associations with host health and disease},
author={Manghi, Paolo and Antonello, Giacomo and Schiffer, Lucas and Golzato, Davide and
Wokaty, Andres and Segata, Nicola and Oh, Sehyun and Waldron, Levi and others},
journal={Nature Communications},
volume={17},
year={2025},
doi={10.1038/s41467-025-66888-1}
}
% 3) Bioconductor 包本体(版本化引用)
@misc{curatedMetagenomicData-pkg,
author={Schiffer, Lucas and Manghi, Paolo and Pasolli, Edoardo and Waldron, Levi and others},
title={{curatedMetagenomicData}: curated metagenomic data through ExperimentHub},
howpublished={Bioconductor R package},
year={2026},
note={Version 3.20.0, Bioconductor 3.23},
doi={10.18129/B9.bioc.curatedMetagenomicData}
}
% 4) 批校正/meta 分析(如使用 MMUPHin 工作流)
@article{thomas2019crc,
title={Metagenomic analysis of colorectal cancer datasets identifies cross-cohort
microbial diagnostic markers and disease-associated features},
author={Thomas, Andrew Maltez and Manghi, Paolo and Asnicar, Francesco and
Segata, Nicola and others},
journal={Nature Medicine},
volume={25},
year={2019},
doi={10.1038/s41591-019-0406-6}
}
引用合规提示:cMD 的 93 项上游研究各有原始论文。正式发表中,除上述 1-3 外,凡分析中实际使用了某项研究的样本(如 CRC 五项研究),应逐项引用其原始论文(作者-年份命名即是提醒)。仅引用 cMD 本体而不引用上游研究,是审稿中最常见的合规退稿理由之一。
教程与学习资源
- 官方 vignette(取数、counts/rownames、mergeData 全流程)——入门唯一必读;
- miaverse 教程集(mia 变换、可视化、多样性分析):https://microbiome.github.io/
- SIAMCAT vignette 的 “cross-validation on study level” 章节——留一研究验证的标准教材;
- MMUPHin vignette——去批次与分层 meta 分析的官方示例直接使用 cMD 数据;
- BugSigDB 的 cMD 相关签名条目——把分析结果与文献签名比对的最快入口。
常见问题快速解答(FAQ)
- Q:数据真的完全免费吗?要不要申请? 是。R 里
BiocManager::install("curatedMetagenomicData")安装后经 ExperimentHub 按需缓存,无需注册、无使用申请(Artistic License 2.0,§9 许可证)。 - Q:能拿到原始测序 reads 吗? 不能。cMD 只分发 MetaPhlAn 3 / HUMAnN 3 的定量结果;需要 reads 请用 sampleMetadata 的 accession 列回 EBI/NCBI 自取(坑点 7)。
- Q:v2 版本去哪了? 不存在。MetaPhlAn 2 时代止于 v1.20.0,下一代直接跳到 v3.0.0 以对齐 MetaPhlAn 3 的"3"(坑点 2)。
- Q:为什么我下载的样本数和论文不一样? 论文(cMD3)口径 22,710/94 研究 vs 包内 22,588/93(HeQ_2017 差异,§3.1);且 sampleMetadata 每周重建、数据随 Bioc release 冻结(坑点 8)。
- Q:物种丰度该用百分比还是 counts? 默认百分比 + CLR;
counts = TRUE是伪计数,只喂给要求"计数形态"的工具并如实声明(坑点 3、坑点 4)。 - Q:能把物种矩阵和通路矩阵拼一起做机器学习吗? 不能直接
mergeData()(坑点 9);各自合并后按sample_id对齐拼接,或用 MultiAssayExperiment 组织。 - Q:这是"患者数据集"吗? 不是。样本级是公开宏基因组与策划元数据;2,599 名纵向受试者只是样本的分组维度,无临床时序病历(frontmatter
patient_count口径说明)。 - Q:引用该引哪些论文? 至少三条:Pasolli 2017(资源论文)+ cMD3 论文(v3.x 数据)+ 包本身;用了某上游研究的样本还需逐项引用其原始论文(§9 引用合规提示)。
- Q:口腔、皮肤等非粪便部位的数据能用吗? 能取到,但合计只占约 7% 样本,效应估计不稳;结论应标注低置信或回源研究取数(§7.1 偏倚表)。
- Q:Python 用户能用吗? 官方分发与配套生态(MMUPHin、SIAMCAT、mia)都是 R/Bioconductor;Python 工作流需先把 assay 与 colData 导出为文件再衔接,但会失去对象级 API 与本条目的官方通道优势(§4.1)。
- Q:发现元数据疑似有错怎么办? 官方维护 GitHub issue tracker 供用户报错(§7.2);分析侧的防御做法是逐研究核对入组标准(坑点 6)而非信任单一字段。
- Q:能用它做宿主遗传-微生物组联合分析吗? 不能。cMD 无配对宿主基因型数据,宿主相关推断只能利用人口学与疾病标签(§1.4 不适用场景)。
- Q:可以商业使用吗? 包本体 Artistic-2.0 允许商用再分发,但须履行 93 项上游研究的逐项引用义务;输出若宣称临床决策能力则进入医疗器械监管范畴(§7.4)。
- Q:跨平台复现最省事的路径? Docker 镜像锁定 R/Bioc 版本 + renv.lock 锁包版本 + 共享只读 ExperimentHub 缓存(§6.12 三件套)。
版本选择速查
新项目默认选当前 release(v3.20.0);只有对齐 2022 年前的旧文献时才需要 archive 里的 v1.20.0:
| 决策因素 | 选 v3.20.0(当前) | 选 v1.20.0(archive) |
|---|---|---|
| 复现 2022-04 之后发表的论文 | ✅ 默认 | ❌(除非论文明确用 MetaPhlAn 2 数据) |
| 复现 2017-2021 的经典文献 | ⚠️ 定性方向对照可以,定量不可比 | ✅ 与原文方法学对齐 |
| 需要与 SIAMCAT/MMUPHin/mia 生态配合 | ✅ TSE 原生支持 | ❌ ExpressionSet 已 defunct,需转换 |
| 新立项的研究 | ✅ | ❌ |
| 两代混用 | — | —(禁止:在独立会话/容器中隔离,坑点 2) |
提醒:无论选哪代,方法学里写明包版本与 Bioconductor release(§6.12 四要素),并把所用研究的原始论文逐项引用(§9 引用合规提示)。
原始论文与关键文献
- Pasolli E, Schiffer L, Manghi P, et al. (2017). “Accessible, curated metagenomic data through ExperimentHub.” Nature Methods 14(11):1023-1024. DOI: 10.1038/nmeth.4468. PMID: 29083405.
- Manghi P, Antonello G, Schiffer L, et al. (2025). “Meta-analysis of 22,710 human microbiome metagenomes defines an oral-to-gut microbial enrichment score and associations with host health and disease.” Nature Communications 17. DOI: 10.1038/s41467-025-66888-1. PMID: 41436448.
- Thomas AM, Manghi P, Asnicar F, et al. (2019). “Metagenomic analysis of colorectal cancer datasets identifies cross-cohort microbial diagnostic markers and disease-associated features.” Nature Medicine 25:667-678. DOI: 10.1038/s41591-019-0406-6.
- Wirbel J, Pyl PT, Kartal E, et al. (2019). “Meta-analysis of fecal metagenomes reveals global microbial signatures that are specific for colorectal cancer.” Nature Medicine 25:679-689.
- Wirbel J, Zych K, Essex A, et al. (2021). “Microbiome meta-analysis and cross-disease comparison enabled by the SIAMCAT suite.” Genome Biology 22:93.
- Geistlinger L, Mirzayi C, Zohra F, et al. (2023). “BugSigDB captures patterns of differential abundance across a broad range of host-associated microbial signatures.” Nature Biotechnology 42(5):790-802. DOI: 10.1038/s41587-023-01872-y.
- Beghini F, McIver LJ, Blanco-Míguez A, et al. (2021). “Integrating taxonomic, functional, and strain-level profiling of diverse microbial communities with bioBakery 3.” eLife 10:e65088.(MetaPhlAn 3 / HUMAnN 3 上游管线论文)
§10 AI 使用声明卡
§10.1 AI 模型使用
本条目由 CodeBuddy(fast-model)生成初稿。事实性内容(版本号、样本量、论文信息、API 行为)均经网络检索核实并以 FACTS 清单(8 组主题、全部带来源 URL)为唯一事实底稿;代码示例对照官方 vignette 与工具文档逻辑审查。
§10.2 AI 参与范围
AI 在本页面的工作中负责:(1) 从 Bioconductor 包页、官方 vignette、GitHub 仓库、Nature Methods 2017 与 Nature Communications 2025 论文及 Broad Institute 出版记录中整理结构化事实;(2) 生成 §6 的 R 代码示例与 §6.9 的 10 个坑点;(3) 构建 §7.1 偏倚表与 §7.7 DAIMS 评估;(4) 执行排版规范(中英文空格、千分位分隔、代码围栏配对)检查;(5) 构建 §C 统一 JSON-LD @graph。
§10.3 输入来源
- Pasolli et al. (2017), Nature Methods 14(11):1023-1024 — cMD 原始论文(DOI: 10.1038/nmeth.4468)
- Manghi et al. (2025), Nature Communications 17 — cMD3 论文(DOI: 10.1038/s41467-025-66888-1;PMID: 41436448;Broad Institute 出版记录与 BugSigDB 条目交叉核实)
- Bioconductor 包页与 NEWS(curatedMetagenomicData v3.20.0 / Bioconductor 3.23;版本史、license、R 版本要求)
- 官方 vignette(六类 dataType、dryrun/counts/rownames 参数、mergeData/returnSamples 用法)
- GitHub waldronlab/curatedMetagenomicData(源码、issue tracker、维护机构)
- ExperimentHub 文档(资源缓存与 release 快照机制)
- Broad Institute 出版记录(cMD3 论文作者全表与摘要,2026-09 检索)
- BugSigDB 条目 41436448(cMD3 论文的社区策划记录)
- Geistlinger et al. (2023), Nature Biotechnology 42(5):790-802 — BugSigDB 论文
- Thomas et al. (2019), Nature Medicine 25 — CRC 跨队列 meta 分析
- Wirbel et al. (2019, 2021), Nature Medicine 25 / Genome Biology 22:93 — CRC meta 分析与 SIAMCAT 基准
- Beghini et al. (2021), eLife 10:e65088 — bioBakery 3(MetaPhlAn 3/HUMAnN 3)管线论文
- MMUPHin / mia / Maaslin2 / SIAMCAT 官方文档(生态工具用法)
- Google Scholar 引用快照(保守口径,截至 2026-09)
- FACTS 清单(本条目写作的 8 组主题事实底稿,逐条带来源 URL,2026-09 汇编)
§10.4 人工校验表
| 内容模块 | 审核者 | 审核方式 | 审核状态 |
|---|---|---|---|
| §2 医学背景(疾病映射、关联解读边界) | 千方病案医学编辑部 | 交叉审核 | ✅ 已通过 |
| §3 数据集规格(版本矩阵、队列构成) | 千方病案医学编辑部 | 与 Bioconductor 包页及 cMD3 论文交叉比对 | ✅ 已验证 |
| §4 数据结构(六类对象、API 语义) | 千方病案医学编辑部 | 与官方 vignette 交叉比对 | ✅ 已验证 |
| §5 划分与泄漏策略 | 千方病案医学编辑部 | 交叉审核 | ✅ 已通过 |
| §6 代码示例与坑点 | 千方病案医学编辑部 | 逻辑审查 + 与官方文档比对 | ✅ 已通过 |
| §7 质量评估与 DAIMS 评分 | 千方病案医学编辑部 | 交叉审核 | ✅ 已通过 |
| §8 基准与生态(cMD3 结果数字) | 千方病案医学编辑部 | 与论文摘要及出版记录交叉比对 | ✅ 已验证 |
| §C JSON-LD @graph | 千方病案医学编辑部 | Schema v3.9 字段逐项校验 | ✅ 已通过 |
§10.5 AI 生成章节标注
以下章节由 AI 生成初稿并经人工审核:§1.0 30 秒速览、§3.2 版本矩阵、§6.0-§6.12 代码示例与扩展指南、§6.9 十个坑点、§7.7 DAIMS 评估表与评分、§8.1 cMD3 结果解读、§C JSON-LD。
§10.6 最后审核
最后一次人工审核日期:2026-09-05
复核计划:随 Bioconductor 每年两次 release(每年 5 月与 10 月)复核版本号、研究/样本规模与本文引用的 cMD3 论文目录数字;下一次复核窗口为 2027-05(Bioc 3.25)。
页面状态:published(全部内容已完成审核并发布)
相关数据集导航
以下为站内 AI-Ready 数据集百科中与本词条共享多个主题标签的相关数据集,按相关度降序排列:
- hmp — 共享标签:基因组学与多组学 / 测序数据 / 微生物组
- mgnify — 共享标签:基因组学与多组学 / 测序数据 / 微生物组
- american-gut-project — 共享标签:基因组学与多组学 / 测序数据 / 微生物组
- gnomad — 共享标签:基因组学与多组学 / 测序数据
- uniprot — 共享标签:基因组学与多组学 / 测序数据
- 1000-genomes — 共享标签:基因组学与多组学 / 测序数据
- encode — 共享标签:基因组学与多组学 / 测序数据
- geo — 共享标签:基因组学与多组学 / 测序数据
- dbsnp — 共享标签:基因组学与多组学 / 测序数据
- ega — 共享标签:基因组学与多组学 / 测序数据
导航说明:本章节由全站统一标签体系自动计算生成(标签重合度算法),双向可达;点击链接可跳转至对应数据集词条。

