在使用clusterProfiler时,KEGG注释包,可以自定义。毕竟许多物种的数据库是不完善的。
现在就自定义一个KEGG.db的包,用于KEGG注释。
第一步,先去上述官方地址找到自己研究的物种在KEGG数据里的3字符缩写,比如:人的缩写是hsa
#安装Y叔的包,
#安装创建KEGG数据库的包的包
install.packages(remotes)
library(remotes)
remotes::install_github("YuLab-SMU/createKEGGdb")
#创建自己的物种的包create_kegg_db,会自动创建名称为KEGG.db_1.0.tar,gz的包。物种名称的简写,在
createKEGGdb::create_kegg_db("hsa")
#安装这个包(默认的包的路径在当前工作目录,根据实际情况修改路径)
install.packages("KEGG.db_1.0.tar.gz",repos=NULL,type="source")
把KEGG数据库本地化的好处是可重复性好。对于同一批数据可以用同一个数据库,不会因网络端更新而前后结果不一致。
快速上手生成KEGG.db,到此已结束。
测试本地的包
library(KEGG.db)
library(clusterProfiler)
data(geneList,package="DOSE")
head(geneList)
gene <- names(geneList)[abs(geneList) > 2]
head(gene)
kk <- enrichKEGG(gene= gene,organism= 'zma',pvalueCutoff = 0.05,qvalueCutoff = 0.05,use_internal_data =T)
#当使用本地的KEGG.db数据库时,use_internal_data设置为T,使用在线数据库时设置为F.
head(kk)
nrow(kk)