R语言:GO富集分析,KEGG分析

版本R3.6.0
参考:Gene_ID转换、GO+KEGG+Reactome | ClusterProfiler+ReactomePA
转录组学习(功能富集分析)

BiocManager::install("AnnotationHub")	#下载安装数据包,缺少的数据包都可以这样安装

library(AnnotationHub)	#library导入需要使用的数据包
library(org.Hs.eg.db)   #人类注释数据库
library(clusterProfiler)
library(dplyr)
library(ggplot2)

f <- read.table("C:\\File\\GeneEnsembl.txt")	#导入数据,ENSEMBL编号。
#若是excel文件,可library(readxl) ,read_excel("old_excel.xls")
f <- f[c(1)] 	#取需要的列

#将ENSEMBL编号转换为ENTREZID
EG2Ensembl=toTable(org.Hs.egENSEMBL)	 #将ENTREZID和ENSEMBL对应的数据存入该变量
f=f$V1	#list转化为字符向量
geneLists=data.frame(ensembl_id=f)
results=merge(geneLists,EG2Ensembl,by='ensembl_id',all.x=T)
id=na.omit(results$gene_id)  #提取出非NA的ENTREZID

#GO富集分析
ego <- enrichGO(OrgDb="org.Hs.eg.db", gene = id, ont = "MF", pvalueCutoff = 0.01, readable= TRUE) #GO富集分析
dotplot(ego,showCategory=10,title="Enrichment GO Top10") #泡泡图
barplot(ego, showCategory=20,title="EnrichmentGO")  #柱状图
plotGOgraph(ego) 	#GO图,看不清楚可以尝试左上角另存为pdf

#KEGG分析#
ekk <- enrichKEGG(gene= id,organism  = 'hsa', qvalueCutoff = 0.05)	 #KEGG富集分析
dotplot(ekk,font.size=8)	# 画气泡图
browseKEGG(ekk,'mmu01100')	# 显示通路图

你可能感兴趣的:(R)