R语言clusProfiler进行GO与KEGG富集分析

GO和KEGG富集分析的注释信息(注释包)

  • GO常用的注释信息包

GO的注释信息主要来自Bioconductor,提供了19个物种的org类型的GO注释信息。其中包括有常见的物种,如:牛、猪、人类、小鼠等。

BioconductorGO注释包icon-default.png?t=M4ADhttps://link.zhihu.com/?target=http%3A//www.bioconductor.org/packages/release/data/annotation/

  • KEGG注释信息包

KEGG APIicon-default.png?t=M4ADhttps://link.zhihu.com/?target=https%3A//www.kegg.jp/kegg/rest/keggapi.html

没有物种信息

对于没有物种信息的项目进行GO富集时,我们则需要通过读取外部的GO注释文件进行分析,可以使用blast2go软件进行基因的注释。

同样地,对于pathway数据库中没有的物种,也支持读取基因的pathway注释文件,然后进行分析。

GO与KEGG分析

  • clusterProfiler安装

#安装clusterProfiler
If(!requireNamespace(“BiocManager”,quietly = TRUE))

Install.packages(“BiocManager”)

BiocManager::install(“clusterProfiler”)
  • 以人类注释数据库为例进行安装

其它物种数据库可自行查找

#人类注释数据库
BiocManager::install(“org.Hs.eg.db”)

library(org.Hs.eg.db)
  • 进行GO富集和KEGG富集分析

library(clusterProfiler)#进行GO富集和KEGG富集

library(dplyr) #进行数据转换

library(ggplot2)#绘图
  • 导入数据与geneID转换

#导入数据,数据为一列基因名的文件
f <- read.table("D:\\Rdata\\Gene.txt",header=T,sep='\t')

#取所需列进行后续分析
x <-f[,1]

#利用bitr函数进行id转换,使用bioconductor的db系列包进行
hg<-bitr(x,fromType="SYMBOL",toType=c("ENTREZID","ENSEMBL","SYMBOL"),OrgDb="org.Hs.eg.db")

#查看hg的信息,三列信息包括ENTREZID、ENSEMBL、SYMBOL
head(hg)
  • GO enrichments

#进行GO富集,确定P值与Q值得卡值并使用BH方法对值进行调整。
go <- enrichGO(hg$ENTREZID,OrgDb = org.Hs.eg.db, ont='ALL',pAdjustMethod = 'BH',pvalueCutoff = 0.05, qvalueCutoff = 0.2,keyType = 'ENTREZID')

#查看富集结果
dim(go)

#导出GO富集的结果
write.csv(go,file="go.csv")

barplot(go,showCategory=20,drop=T)#柱状图

dotplot(go,showCategory=20)#气泡图

#将ont=ALL,换成CC、BP、MF分别进行富集

goCC <- enrichGO(hg$ENTREZID,OrgDb = org.Hs.eg.db, ont='CC',pAdjustMethod = 'BH',pvalueCutoff = 0.05, qvalueCutoff = 0.2,keyType = 'ENTREZID')

goBP <- enrichGO(hg$ENTREZID,OrgDb = org.Hs.eg.db, ont='BP',pAdjustMethod = 'BH',pvalueCutoff = 0.05, qvalueCutoff = 0.2,keyType = 'ENTREZID')

goMF <- enrichGO(hg$ENTREZID,OrgDb = org.Hs.eg.db, ont='MF',pAdjustMethod = 'BH',pvalueCutoff = 0.05, qvalueCutoff = 0.2,keyType = 'ENTREZID')

  • KEGG enrichments

#进行KEGG富集
kegg <- enrichKEGG(hg$ENTREZID, organism = 'hsa', keyType = 'kegg', pvalueCutoff = 0.05, pAdjustMethod = 'BH', minGSSize = 3, maxGSSize = 500, qvalueCutoff = 0.2, use_internal_data = FALSE)

#导出富集结果
write.csv(kegg,file = "kegg.csv")

#查看富集结果
dim(kegg)

#可视化,同上
dotplot(kegg, showCategory=20) #气泡图

#pathway映射
browseKEGG(kegg, "hsa03728") #在pathway通路图上标记富集到的基因,会链接到KEGG官网

  • 2
    点赞
  • 62
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
KEGG富集分析是一种常用的生物信息学分析方法,用于研究基因或蛋白质的功能和通路富集情况。在R语言中,可以使用Bioconductor中的包来进行KEGG富集分析,其中包括KEGGREST和clusterProfiler。 首先,你需要安装并加载这些包。可以使用下面的代码来完成这一步骤: install.packages("BiocManager") BiocManager::install("KEGGREST") BiocManager::install("clusterProfiler") library(KEGGREST) library(clusterProfiler) 接下来,你需要准备好你的基因列表,并使用KEGGREST包中的函数获取基因对应的KEGG通路信息。下面是一个示例代码,你可以根据你的需要进行修改: gene_list <- c("gene1", "gene2", "gene3") # 替换为你的基因列表 kegg_pathways <- keggGet("pathway", "hsa", "list") # 获取KEGG通路列表 gene_pathway <- enrichKEGG(gene = gene_list, organism = "hsa", pvalueCutoff = 0.05) # 进行KEGG富集分析 最后,你可以使用clusterProfiler包中的函数来可视化KEGG富集分析结果,比如绘制富集通路的柱状图、网络图等。以下是一个绘制柱状图的示例代码: barplot(gene_pathway, showCategory = 10) # 显示前10个富集通路 通过以上步骤,你就可以在R语言进行KEGG富集分析了。请注意,根据你的具体需求,你可能还需要进行一些参数的调整和结果的解释。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* [R语言clusProfiler进行GO与KEGG富集分析](https://blog.csdn.net/Joey_Liu666/article/details/124988292)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *3* [生信分析论文套路R语言代码](https://download.csdn.net/download/thtfhtfhvyyy/87244940)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值