ClusterProfiler运行enrichKEGG的时候,需要先下载KEGG的数据。但最近一直下载不成功,报错如下

1
2
3
4
5
6
7
Reading KEGG annotation online: "https://rest.kegg.jp/link/hsa/pathway"...
Warning message:
In (function (con = stdin(), n = -1L, ok = TRUE, warn = TRUE, encoding = "unknown",  :
  URL 'https://rest.kegg.jp/link/hsa/pathway': Timeout of 60 seconds was reached
Error:
! cannot read from connection
Show Traceback

有说更换下载方式的

1
2
options(clusterProfiler.download.method = "auto")
# “internal”、“wininet”(Windows下)、“libcurl”、“wget”和“curl”,"auto"

但还是不成功。只能自己构建一个库了。根据https://yulab-smu.top/biomedical-knowledge-mining-book/022-kegg.html说明

1
2
3
4
5
6
7
8
# 安装包,确保能访问,我在windows下安装的
remotes::install_github("YuLab-SMU/createKEGGdb")
library(createKEGGdb)
# create KEGG.db for human and Arabidopsis
create_kegg_db(c("hsa"))
# 这样在getwd()目录下生成了KEGG.db_1.0.tar.gz文件
# 上传到服务器上,安装
install.packages("KEGG.db_1.0.tar.gz", repos=NULL, type="source")

这样的话,以后用的时候,加上use_internal_data = TRUE即可。

1
2
3
4
5
library(KEGG.db)
kk <- enrichKEGG(gene         = gene,
                 organism     = 'hsa',
                 pvalueCutoff = 0.05,
                 use_internal_data = TRUE)

如果你一直没有下载成功,我备了一份KEGG.db_1.0.tar.gz,打包了hsa和mmu的,直接用即可。下载地址:

KEGG.db_1.0.tar.gz

####################################################################

#版权所有 转载请告知 版权归作者所有 如有侵权 一经发现 必将追究其法律责任

#Author: Jason

#####################################################################