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

GOsummaries处理基因列表触发内部服务器错误及依赖兼容问题求助

解决GOsummaries依赖旧gprofiler包及服务器内部错误问题

问题核心

需要用GOsummaries对比两组基因列表的GO富集结果,但运行gosummaries()时遇到三个问题:

  • 旧版gprofiler包已废弃,触发过时警告
  • 调用旧gprofiler服务器时出现INTERNAL SERVER ERROR
  • 卸载旧gprofiler仅保留gprofiler2会导致GOsummaries因依赖缺失无法运行

报错原因

  1. 旧版gprofiler包依赖的服务器接口已停止维护,导致请求失败
  2. GOsummaries当前版本未更新对gprofiler2的支持,直接替换包会触发依赖冲突

解决方案

步骤1:预处理基因列表(去重)

基因列表中的重复值可能导致服务器处理异常,先去重:

# 去除重复基因
genes1 <- unique(trad_genes$SYMBOL)
genes2 <- unique(genes_pvalue_EA$SYMBOL)

步骤2:用gprofiler2完成GO富集

使用新版gprofiler2获取GO富集结果,避免调用旧服务器:

library(gprofiler2)
# 富集分析(以人类基因为例,可根据物种修改organism参数)
gost_group1 <- gost(
  query = genes1,
  organism = "hsapiens",
  sources = c("GO:BP", "GO:MF", "GO:CC"), # 指定GO三个分支
  user_threshold = 0.05 # 自定义显著性阈值
)

gost_group2 <- gost(
  query = genes2,
  organism = "hsapiens",
  sources = c("GO:BP", "GO:MF", "GO:CC"),
  user_threshold = 0.05
)

步骤3:转换结果格式适配GOsummaries

将gprofiler2的gost结果转换成GOsummaries可识别的结构:

library(GOsummaries)
library(dplyr)

# 定义格式转换函数
format_gost_for_gs <- function(gost_result, group_label) {
  formatted <- gost_result$result %>%
    select(
      term_id = term_id,
      term_name = name,
      p_value = p_value,
      domain = source,
      group = group_label
    ) %>%
    # 匹配GOsummaries的domain命名格式
    mutate(domain = case_when(
      domain == "GO:BP" ~ "biological_process",
      domain == "GO:MF" ~ "molecular_function",
      domain == "GO:CC" ~ "cellular_component"
    ))
  return(formatted)
}

# 转换两组结果
formatted_g1 <- format_gost_for_gs(gost_group1, "Traditional")
formatted_g2 <- format_gost_for_gs(gost_group2, "EA_pvalue")

# 合并结果并创建gosummaries对象
combined_go <- bind_rows(formatted_g1, formatted_g2)
gs <- gosummaries(combined_go, group = "group")

# 查看或可视化结果
print(gs)
plot(gs)

备选方案:网页端导出结果后导入

如果不想写代码转换,可直接在g:Profiler网页端分别分析两组基因,导出TSV格式的富集结果,然后在R中读入并整理成上述格式,再传入gosummaries()。


内容的提问来源于stack exchange,提问作者José Adrián Pardo Pérez

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 09:20:55