玉米转录组的KEGG和GO富集分析

1.GO富集

使用orgDb

通过使用Bioconductor的AnnotationHub在线检索并抓取OrgDb。
非模式基因GO富集分析:以玉米为例+使用OrgDb

在线shiny

可以选择B73_v3和v4。
玉米GO富集分析

agriGO

物种进去,检索玉米Zea mays(maize)
image.png
粘贴ID,选择ID版本,提交即可。
image.png
拿到富集分析结果后,自行绘图。

2. KEGG富集

先使用createKEGGdb创建玉米的KEGG注释包,再进行富集。

remotes::install_github("YuLab-SMU/createKEGGdb")

最近总是下不了Github上的R包,各种倒腾没解决,包括我之前的方法:[# 解决install_github安装R包时无法打开(cannot open)URL?
](https://www.cnblogs.com/jessepeng/p/14077003.html)
应该是我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(GRMZMG*****)。用Bioconductor中的信息也许可以转,但担心不全,也没试。

MaizeGDB上有非常全的ID对应关系:
Translate Gene Model IDs

image.png

左边框输入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)

Ref:
https://www.jianshu.com/p/2950347165e4

posted @ 2022-08-18 17:09  生物信息与育种  阅读(988)  评论(0编辑  收藏  举报