GSEA 富集分析

理论知识

GSEA(Gene Set Enrichment Analysis),该方法发表于2005年的Gene set enrichment analysis: a knowledge-based approach forinterpreting genome-wide expression profiles,是一种基于基因集的富集分析方法。

应用该分析的背景:常规的转录组分析会获得大量的差异基因,如何将巨量的差异基因与生物学功能结合在一起,就成了一个问题。当然,后面出现了KEGG 和GO分析,这些分析可以说比较笼统,紧紧将所有的差异基因序列提取出来,与预设的通路比较,得到通路富集的结果,至于上调或下调则不得而知。此外,仅仅关注单个基因的差异表达,并不能说其参与的整个通路受到什么影响?相对而言,整个通路的所有基因的整体上调或下调才会显得更有意义。
为了解决这一问题,就出现了GSEA分析。

GSEA分析首先根据FoldChange值排序(一般是降序),然后根据预设的生物学功能的gene subset进行注释,就很容易获得参与某条通路/途径的关键基因,或者直接看出通路调控整体是上升或下降。

在对基因表达数据分析时,首先确定分析的目的,即选择MSigDB中的一个或多个功能基因集进行分析,然后基于基因表达数据与表型的关联度(也可以理解为表达量的变化)的大小进行排序。然后判断每个基因集内的基因是否富集于表型相关度排序后基因列表的上部或下部,从而判断此基因集内基因的协同变化对表型变化的影响。


GSEA的输入是一个基因表达量矩阵,其中的样本分成了A和B两组,找到两组之间差异表达的基因,然后根据foldchange进行排序,用来表示基因在两组间表达量的变化趋势。Gene list Rank 可以理解成foldchange由大到小,由正到负排序。 排序之后的基因列表其左侧可以看做是上调的差异基因,其右侧是下调的差异基因,中间属于差异不显著的基因。GSEA分析的是一个基因集下的所有基因是否在这个排序列表的顶部或者底部富集,如果在顶部富集,我们可以说,从总体上看,该基因集是上调趋势,反之,如果在底部富集,则是下调趋势。(建议读原文献)

关键点

  1. 首先根据自己的实验目的选择合适的gmt文件,可以参考[基因集数据库MSigdb] (GSEA | MSigDB (gsea-msigdb.org)
    image.png

我主要关注的基因集数据库是:

  • H: hallmark gene sets
  • C7: immuologic signature gene sets
  • C8: cell type signature gene sets.
  1. 基因表达矩阵
    主要使用前两列(Gene和log2FoldChange)


    image.png

代码实战

#准备gmt文件
library(tidyverse)
library(org.Hs.eg.db)
library(clusterProfiler)

msigdb_GMTs <- "msigdb_v7.0_GMTs"
msigdb <- "h.all.v7.5.1.entrez.gmt"    #根据个人实际需求下载或编辑
kegmt <- read.gmt(file.path(msigdb_GMTs,msigdb))

#准备差异基因列表
geneList = DEG$log2FoldChange
names(geneList) = DEG$ENTREZID
head(geneList)
geneList = sort(geneList, decreasing = TRUE)

#GSEA分析
set.seed(1)
egmt<-GSEA(geneList,TERM2GENE = kegmt) #GSEA分析
#转换成数据框
egmt_result_df <- as.data.frame(egmt)
write.table(egmt_result_df,file="GSEA_MSigDb_h.all_result.txt",sep = "\t",row.names = T,col.names = NA,quote = F)
save(egmt,egmt_result_df,file = "GSEA_deg_h.all.rda")

可视化

gseaplot2(egmt,3,color="red",pvalue_table = T)

#结果汇总
gseaplot2(egmt, geneSetID = c(1,3), subplots = 1:3,pvalue_table = T)

#气泡图 展示geneset被激活还是抑制
egmt2<- setReadable(egmt,OrgDb=org.Hs.eg.db, keyType = "ENTREZID")
dotplot(egmt2,split=".sign",showCategory = 10,font.size = 10, title = "",
  label_format = 30,)+facet_grid(~.sign)
#edit legends
   # +guides(
        #reverse color order (higher value on top)
        #color = guide_colorbar(reverse = TRUE))
        #reverse size order (higher diameter on top) 
        #size = guide_legend(reverse = TRUE))
# Title 可以添加标题

结果输出:

  1. 单个通路


    单个通路整体下调

    2.多个通路同时展示


    hallmark gene set 注释分析

    从这个图可以看出处理组与对照组比较,哪些通路被激活哪些通路被抑制,还可进一步去看单个通路中起到关键作用的基因集:Leading Edge Subset。 针对这一块进一步的分析我还不会,这也是深入研究比较关键的部分。后续再补充吧。
    image.png
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 212,332评论 6 493
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 90,508评论 3 385
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 157,812评论 0 348
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 56,607评论 1 284
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 65,728评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,919评论 1 290
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,071评论 3 410
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,802评论 0 268
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,256评论 1 303
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,576评论 2 327
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,712评论 1 341
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,389评论 4 332
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,032评论 3 316
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,798评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,026评论 1 266
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 46,473评论 2 360
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 43,606评论 2 350

推荐阅读更多精彩内容