1.GO富集
使用orgDb
通过使用Bioconductor的AnnotationHub在线检索并抓取OrgDb。
非模式基因GO富集分析:以玉米为例+使用OrgDb
在线shiny
可以选择B73_v3和v4。
玉米GO富集分析
2. KEGG富集
先使用createKEGGdb创建玉米的KEGG注释包,再进行富集。
remotes::install_github("YuLab-SMU/createKEGGdb")
最近总是下不了Github上的R包,各种倒腾没解决,包括我之前的方法:# 解决install_github安装R包时无法打开(cannot open)URL?
应该是我R版本的问题。
无奈,换在Linux服务器上试试。确实无问题:
remotes::install_github("YuLab-SMU/createKEGGdb")
createKEGGdb::create_kegg_db('zma')
将生成在当前目录下的KEGG.db_1.0.tar.gz
导出,在Rstudio中手动安装(Tools),成功了。
接下来是ID转换的问题。创建的KEGG.db里的ID是entrez_id,而我的差异基因ID是B73_v3(GRMZM*G******)。用Bioconductor中的信息也许可以转,但担心不全,也没试。
MaizeGDB上有非常全的ID对应关系:
Translate Gene Model IDs
左边框输入B73_v3或B73_v4都可以直接转Entrez,保存为文件。
直接用clusterProfiler进行KEGG富集分析:
file="diffgene_down.txt"
sn=gsub(".txt","",file)
gene <- read.delim(file,header = T,row.names = 1)
kk <- enrichKEGG(gene= gene$GenBank.Gene,organism= 'zma',
pvalueCutoff = 1,
qvalueCutoff = 1,
use_internal_data =T)
head(kk)
write.csv(kk@result,file = paste0(sn,".pathway.csv"),row.names = F)
##只展示过阈值的pathway
kkp <- enrichKEGG(gene= gene$GenBank.Gene,organism= 'zma',qvalueCutoff = 0.05,use_internal_data =T)
head(kkp)
p=dotplot(kkp);p
ggsave(p,filename = paste0(sn,".pathway.png"),width = 8,height = 7,dpi = 300)
ggsave(p,filename = paste0(sn,".pathway.pdf"),width = 8,height = 7,dpi = 300)
网友评论