在使用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)
