首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >这次真的是Y叔的锅了吗:为什么KEGG通路富集结果中的分类有NA呢?

这次真的是Y叔的锅了吗:为什么KEGG通路富集结果中的分类有NA呢?

作者头像
生信技能树
发布2025-11-20 11:31:16
发布2025-11-20 11:31:16
200
举报
文章被收录于专栏:生信技能树生信技能树

收到我们微信群里一个网友的提问,她使用 Y叔的 clusterProfiler包做KEGG Pathway的富集分析,发现结果的通路分级中含有NA值,如下图。 那为什么KEGG富集通路结果中的分类有NA呢?

一起来找问题

1、先去官网看看是不是真的没有大类信息

看看这个通路:Neuroactive ligand signaling

官网:https://www.genome.jp/kegg/pathway.html

查询结果:

结果

官网有这个信息,我还查了其他通路,确定官网所有的通路都有这个层级分类!

2、看看是不是包的版本问题

一开始我没在意,以为是版本的原因呢。我看了下自己的版本,不是最新的。

代码语言:javascript
复制
packageVersion("clusterProfiler")
# [1] ‘4.16.0’

更新到最新,步骤如下:

  • step1:重启Rstudio,一定要重启。
  • step2:重新安装最新版本:
代码语言:javascript
复制
devtools::install_local("clusterProfiler-devel.zip",updata = FALSE )
packageVersion("clusterProfiler")

但是没有解决问题,还是会有NA,看来不是版本的问题了。

3、看源码

这下没办法,只能抠一下作者的源码了,先找到添加分类的地方:

找到这个函数:res <- append_kegg_category(res)

在代码:clusterProfiler-devel/R/kegg-utilities.R:append_kegg_category 中

看看这个函数:append_kegg_category函数

作者用的这个包里面内置的整理好的层级分类!

clusterProfiler-devel/data/kegg_category.rda

代码语言:javascript
复制
utils::data(list="kegg_category", package="clusterProfiler")
get("kegg_category", envir = .GlobalEnv)

## 看看在不在里面
data_sub$Description
data_sub$Description %in% kegg_category$name
结果:确实都不在里面,但是官网是有这个分类信息的,所以看看有缘人发给Y叔,想办法更新一下这个文件了!
上面有分类信息有NA的几个通路有好几个是New的。
在线蹲一个Y叔的反馈!
希望他不要打我!

此外,我们生信技能树每月都有一期针对0基础的生信入门培训班,12月份开始招生啦,快来瞧一瞧:生信入门&数据挖掘线上直播课12月班

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-11-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 生信技能树 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一起来找问题
    • 1、先去官网看看是不是真的没有大类信息
    • 2、看看是不是包的版本问题
    • 3、看源码
      • 结果:确实都不在里面,但是官网是有这个分类信息的,所以看看有缘人发给Y叔,想办法更新一下这个文件了!
      • 上面有分类信息有NA的几个通路有好几个是New的。
      • 在线蹲一个Y叔的反馈!
      • 希望他不要打我!
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档