GSEA分析也是功能分析的一种,GSEA的结果图想必大家也不陌生,接下来就让小编带大家画一下炫酷的基因集富集分析图吧~
GSEA富集分析可以用GO的基因集也可以用KEGG的基因集,今天来看一下GSEA-KEGG分析
首先加载相关的R包
###########加载library(topGO)library(enrichplot)library(ggplot2)library(org.Hs.eg.db)#人类基因组注释相关的包library(DO.db)library(clusterProfiler)
导入需要进行分析的基因,在这里,我们以差异表达分析中所有上调的基因
###########差异分析结果AML_diff0)),]head(AML_diff)head(AML_genelist_up)
因为entrez ID 进行下一步分析比较准所以利用bitr函数转换一下ID,这里会转换
###########ID转换AML_genelist_up_l
由于表达谱的基因ID一般是ensemblID,而 gseKEGG接受的ID是entrezID所以构建genelist要将entrezID、ensemblID和logFC合并
###########信息合并AML_genelist_up
gseKEGG的输入必须是排序后的geneList;需要两列:命名(每一个数字都有一个对应的名字,就是相应的基因ID了);排序(是一串数字,数字是从高到低排序的)
###########排序geneList
下面进行gseKEGG分析
###########GSEA分析AML_GSEA_KEGG_up
AML_GSEA_KEGG_up$Description#富集到哪些基因集上
AML_GSEA_KEGG_up$enrichmentScore#富集得分
#根据enrichmentScore对GSEA的结果进行排序sortAML_GSEA_KEGG_up
开始画图
###########画图gseaplot2(AML_GSEA_KEGG_up,row.names(sortAML_GSEA_KEGG_up))
美化-只显示前三个基因集:
###########美化gseaplot2(AML_GSEA_KEGG_up,row.names(sortAML_GSEA_KEGG_up),#只显示前三个GSEA的结果title="AML_GSEA_KEGG_up",#标题 color = c("#626262","#8989FF","#FF0404"),#颜色 pvalue_table = FALSE, ES_geom = "line"#enrichment scored的展现方式 'line' or 'dot')