ARTICLE DETAIL

资讯详情

深耕网站SEO优化与搜索引擎排名提升的一线实战洞察。

MetaboAnalystR 实战:从原始峰表到通路富集的 5 步工作流

MetaboAnalystR 实战:从原始峰表到通路富集的 5 步工作流 MetaboAnalystR 实战从原始峰表到通路富集的 5 步工作流【免费下载链接】MetaboAnalystRR package for MetaboAnalyst项目地址: https://gitcode.com/gh_mirrors/me/MetaboAnalystR拿到一批 LC-MS 定量峰表后从质控做到通路富集你通常要翻几份文档经验值是三份归一化查一份、统计查一份、KEGG 映射再查一份。MetaboAnalystR 代谢组学分析就是冲着把这条链路一次跑通设计的一个 R 包装好QC、统计建模、标志物筛选、通路富集全部在同一套对象上完成。这篇带你从安装到出第一张 PCA 图再到 PLS-DA 筛选和代谢通路富集每一步都是能直接复制的代码。它是什么MetaboAnalyst 网页版的本地运行版MetaboAnalystR 是 McGill 大学 Xia 实验室的开源 R 包当前仓库版本 4.3.0和 MetaboAnalyst 网页服务器共用同一套底层代码包含 500 多个函数覆盖数据预处理、统计分析、标志物发现和通路富集。对用过网页版的读者可以理解为整个 web 服务器搬进了 R 控制台——网页版导出的 R 命令历史在本地可以原样重跑。内置知识库约 50 万个代谢物集合、150 万条 MS2 谱图所以代谢通路富集不需要依赖在线服务本地就能算。5 分钟跑通 R 代谢组学 PCA第一个目标看到 PCA 评分图。PCA 本质就是把高维数据压到二维面上看不同组的样本分不分开。先装包一次性操作。包里有 C 代码需要编译器Linux 先装 libcairo2-dev、libxml2 等系统库Windows 装 Rtoolsgit clone https://gitcode.com/gh_mirrors/me/MetaboAnalystR cd MetaboAnalystR R CMD INSTALL .然后跑最短链路。CSV 约定行为样本、列为代谢物第一列是分组标签两组数据library(MetaboAnalystR) mSet - InitDataObjects(conc, stat, FALSE) mSet - Read.TextData(mSet, data.csv, rowu, disc) mSet - SanityCheckData(mSet) mSet - ReplaceMin(mSet) mSet - Normalization(mSet, NULL, LogNorm, MeanCenter) mSet - PCA.Anal(mSet) PlotPCA2DScore(mSet, pca_score.png, png, 300)⚡ 图中两组样本明显分开说明分组信号真实存在可以继续往下做如果样本按上机批次聚集而不是按分组分开先回头查上机顺序和 QC 样本。整个工作流由 mSet 这个对象驱动每个函数吃进 mSet、吐出新 mSet中间结果都挂在它身上不用来回存文件。用真实数据走完整条工作流下面按数据准备 → 质控 → 统计建模 → 出图 → 富集推进。官方测试脚本放在仓库的 tests/ 目录里每步都有期望值可以对。第 1 步数据准备先确认行列方向Read.TextData 两个参数值得记一下rowu 表示行是样本disc 表示两组探索型设计。如果你的表是行为代谢物、列为样本改成 colu。⚠️ 第一列组名不能有空值且行数必须和数据行数严格一致否则 SanityCheckData 会直接报错。第 2 步质控三步ReplaceMin 把零值/缺失值替换为该变量最小正值的 1/5后面要取对数数据里不能有 0Normalization 做对数转换加均值中心化。预期结果mSet$dataSet$norm 里多出一份和原表同尺寸的标准化矩阵。mSet - ReplaceMin(mSet) mSet - Normalization(mSet, QuantileNorm, LogNorm, MeanCenter)组间样本量差异大、总强度差得多时加 QuantileNorm 做分位数归一化否则第一个参数用 NULL 即可。第 3 步统计建模先单变量先 t 检验加倍数变化FC再用火山图看全貌mSet - Ttests.Anal(mSet, threshp 0.05) mSet - FC.Anal(mSet, 2.0, 0) mSet - Volcano.Anal(mSet, FALSE, 2.0, 0, F, 0.1, TRUE, raw) mSet - PlotVolcano(mSet, volcano.png, Volcano, theme_bw, png, 300)火山图两端是倍数大 p 值小的显著差异代谢物这一张图就能回答两组到底差在哪。PLS-DA 生物标志物筛选参数怎么选PLS-DA 从所有代谢物里提取最能区分两组的潜在方向VIP 分数衡量每个代谢物对这个方向的贡献常用 1.5 作为重要的门槛。样本量小于 50 时3–4 个组分通常就够包自带置换检验用它确认模型分离度显著高于随机再去看 VIP 才可靠。mSet - SetAnalysisMode(mSet, biomark) mSet - PrepareROCData(mSet) mSet - PLSDA.CV(mSet) vip - Get.VIP(mSet) head(sort(vip, decreasing TRUE))想要更保守的结果可以只做单变量Perform.UnivROC 对每个代谢物单独跑 ROC再用 CalculateFeatureRanking 给全部代谢物排名直接得到一张按贡献度排序的表。第 4 步出图PCA 用 PlotPCA2DScore火山图用 PlotVolcano差异代谢物的箱线图可用 PlotFC 之类函数。所有出图函数都接受 dpi 参数投图统一传 300。第 5 步从峰表到通路跑 R 代谢通路富集如果你有带 m/z 和保留时间的 MS 峰表可以直接做 Mummichog 通路富集——就是网页版的 MS Peaks to Paths 模块mSet - InitDataObjects(mass_all, mummichog, FALSE) mSet - SetPeakFormat(mSet, mpt) mSet - UpdateInstrumentParameters(mSet, 5.0, negative, yes, 0.02) mSet - Read.PeakListData(mSet, peaks.csv) mSet - SanityCheckMummichogData(mSet) mSet - SetPeakEnrichMethod(mSet, mum, v2) mSet - PerformPSEA(mSet, hsa_mfn, current, 3, 100)hsa_mfn 是人类代谢物功能库current 用当前版本。结果表里按显著性排在前面的通路就是富集结果。⚠️ 仪器参数质量误差、极性必须和实际测的一致Mummichog 的 p 值门槛比 0.05 宽松官方默认 0.2所以没富集出通路多半是参数或峰表格式的问题不是阈值的问题。5 个常见坑怎么快速解决Q装不上、依赖包冲突或找不到编译器要求 R ≥ 4.0。Linux 先装系统库libcairo2-dev、libnetcdf-dev、libxml2、libxt-dev、libssl-devWindows 装 Rtools缺的 Bioconductor 依赖先跑一次 BiocManager::install(BiocManager) 补齐再重试。Q数据导入失败或 SanityCheckData 报错八成是布局问题行列方向搞反该用 colu 用了 rowu、第一列组名有错别字或空单元格、分组数和 disc 声明的两组对不上。先用表格软件肉眼核对这三点比读报错快。Q归一化参数怎么选大多数情况 NULL不做行归一化 LogNorm对数 MeanCenter中心化就够组间样本量悬殊或强度差异大再加 QuantileNorm。没有玄学参数别在这里纠结太久。QPLS-DA 组分怎么选小样本 3–4 个组分然后用置换检验兜底参考置换模型的分离度如果接近甚至超过真实模型说明分组不稳定此时 VIP 排名没有意义先回去查批次和样本量。Q通路富集结果为空或通路很少按顺序查峰表格式是不是 mpt、质量误差和极性对不对、minLib3 的通路过滤条件、p 值门槛。富集的前提是 m/z 能映射到代谢物库m/z 不准确的峰再多也富集不出来。下一步去哪装好这一个包你就有了可复现的质控 → 统计 → 标志物 → 通路完整链路。深入教程在 R 里敲 vignette(package MetaboAnalystR) 就能打开各模块都有带示例数据的分步 vignette官方手册 PDF 在仓库的 inst/docs/ 目录。遇到 bug 或想提需求直接邮件仓库 DESCRIPTION 里登记的维护者即可。【免费下载链接】MetaboAnalystRR package for MetaboAnalyst项目地址: https://gitcode.com/gh_mirrors/me/MetaboAnalystR创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表