You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

multiGSEA包代谢物通路映射异常问题求助

解决multiGSEA包中HMDB代谢物ID无法映射Reactome等通路的问题

我之前调试multiGSEA整合多组学数据时,也碰到过几乎一模一样的代谢物通路映射问题,结合官方文档和踩坑经验,给你几个针对性的解决方案:


1. 确认multiGSEA的代谢物通路数据源配置

multiGSEA默认的代谢物通路集合可能没有完整加载Reactome等数据库的HMDB映射关系,你可以先检查当前可用的代谢物通路集合:

library(multiGSEA)
# 查看已加载的代谢物通路集合
getMetaboliteSetCollections()

如果输出里没有Reactome相关的集合,需要手动通过msigdbr包获取Reactome的代谢物通路数据(注意要指定代谢物对应的基因集类型):

library(msigdbr)
# 获取人类Reactome代谢物通路集合,筛选代谢物相关的条目
reactome_metab_sets <- msigdbr(species = "Homo sapiens", category = "C2", subcategory = "CP:REACTOME") %>%
  dplyr::filter(grepl("METABOLISM", gs_name)) %>%
  msigdbr2geneSetCollection()

之后在调用multiGSEA()时,把这个自定义集合传入geneSetCollections参数即可。

2. 标准化HMDB ID格式

很多映射失败的问题根源是ID格式不统一:比如有的是小写hmdb000123,有的缺前缀,有的带多余后缀。你可以用stringr统一格式:

library(stringr)
# 假设你的代谢物数据框是metab_df,HMDB ID列名为hmdb_id
metab_df$hmdb_id <- str_to_upper(str_remove(metab_df$hmdb_id, "^hmdb"))
metab_df$hmdb_id <- paste0("HMDB", metab_df$hmdb_id)

处理完后再尝试映射,大概率能解决一部分问题。

3. 手动构建HMDB到Reactome的映射表

如果默认数据源的映射不全,你可以自己从Reactome官方下载代谢物-通路关联文件(比如Reactome的Flat File格式数据),提取HMDB ID和通路的对应关系,然后转换成multiGSEA兼容的GeneSetCollection对象:

# 假设你已经下载并整理好映射表reactome_hmdb_map,包含pathway_name和hmdb_id两列
reactome_custom_sets <- split(reactome_hmdb_map$hmdb_id, reactome_hmdb_map$pathway_name)
reactome_custom_gsc <- GeneSetCollection(lapply(names(reactome_custom_sets), function(pw) {
  GeneSet(reactome_custom_sets[[pw]], setName = pw, geneIdType = EntrezIdentifier())
}))

之后在multiGSEA()中使用这个自定义集合即可。

4. 转换ID类型后再映射

Reactome等通路数据库对ChEBI、PubChem ID的支持比HMDB更好,你可以用metaboliteIDmapping包把HMDB ID转换为这些兼容ID:

library(metaboliteIDmapping)
# 将HMDB ID转换为ChEBI ID
hmdb_to_chebi <- mapIDs(metab_df$hmdb_id, from = "HMDB", to = "CHEBI")
# 替换原数据中的HMDB ID为ChEBI ID
metab_df$chebi_id <- hmdb_to_chebi

之后在调用multiGSEA()时,指定metaboliteIdType = "CHEBI",并确保通路集合中的ID类型也是ChEBI。

5. 检查包版本兼容性

如果连vignette示例数据都映射失败,大概率是包版本不匹配的问题。尝试更新multiGSEA和所有依赖包:

update.packages(c("multiGSEA", "msigdbr", "AnnotationDbi", "org.Hs.eg.db"))

更新后重新运行示例代码,看是否能正常映射。


内容的提问来源于stack exchange,提问作者Thomas Jackson

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 10:45:28