一文教会你从头开始做GSEA

作者: PriscillaBai | 来源:发表于2018-06-18 18:10 被阅读69次

声明:本文用到的clusterProfiler, DOSE, enrichplot均是Y叔的作品,本人只是辛勤的搬运工,如想学习更多,请扫下方二维码,关注Y叔的公众号。生信路上自学愉快~

image

Step 1 输入数据

输入:
实验组:敲出掉某基因的基因symbol及FPKM值
对照组:没有敲出掉某基因的基因symbol及FPKM值

##读入数据
setwd("/Users/XXX/desktop")
d1=read.table("knockdown.txt",sep="\t",header=T)
d2=read.csv("control.csv",sep=",",header=T)
##将第一列(symbol)变为向量型(原来是factor)
d1[,1]<-as.character(d1[,1])
d2[,1]<-as.character(d2[,1])
image.png

Step 2 整理数据

1. 首先要将实验组和对照组中相同的基因symbol及表达值整理到一起
d3<-merge(d1,d2,by.x="Symbol",by.y = "Symbol")
##计算log2-foldchange值
d3$FC_value<-log(d3[,3]/d3[,2])
2. 我们有的是symbol,需要转化成entrezID
library(clusterProfiler)
##数据是小鼠的,所以用的是org.Mm.eg.db数据库
anno<-bitr(d3$Symbol, fromType = "SYMBOL", toType = "ENTREZID",OrgDb = "org.Mm.eg.db")
##整理注释过的entrezID号
d4<-merge(d3,anno,by.x="Symbol",by.y = "SYMBOL")
d5<-d4[,-c(1:3)]

根据自己的物种选择数据库和缩写名


image.png
3. 整理genelist, 用于GSEA分析
geneList<-d5[,1]
names(geneList)<-d5[,2]
geneList<-sort(geneList,decreasing = T)

如果想更详细了解整理genelist的原理,请移步https://mp.weixin.qq.com/s/aht5fQ10nH_07CYttKFH7Q

Step 3 做GSEA

GSEA分两大类:
  • KEGG(通路)
  • GO(网络)
GO又分三类
  • BP biological process
  • MF molecular function
  • CC cellular component
    分别给出每一种的代码:
1. KEGG
require(enrichplot)
kk <- gseKEGG(geneList, organism = "mmu")
2. GO
  • BP
kk <- gseGO(geneList,ont = "BP" OrgDb = org.Mm.eg.db)
  • MF
kk <- gseGO(geneList,ont = "MF" OrgDb = org.Mm.eg.db)
  • CC
kk <- gseGO(geneList,ont = "CC" OrgDb = org.Mm.eg.db)
按照得分(enrichment score)排列并保存
sortkk<-kk[order(kk$enrichmentScore,decreasing=T)]

Step 4 可视化

方法一:
library(enrichplot)
gseaplot(kk, "mmu05165")
image.png
方法二:
gseaplot2(kk, "mmu05165")
image.png
方法三:
### 将ES排名前4的画在一张图上
gseaplot2(kk, row.names(sortkk)[1:4], pvalue_table = TRUE)
image.png

老规矩:想要数据集的话,点喜欢,然后私信我就可以了。

相关文章

  • 一文教会你从头开始做GSEA

    声明:本文用到的clusterProfiler, DOSE, enrichplot均是Y叔的作品,本人只是辛勤的搬...

  • 专题:富集分析

    GSEA基因集富集分析 1、用clusterProfiler做GSEA - 简书 2、GSEA-基因集富集分析 -...

  • 使用log2FC排序的基因集进行GSEA分析

    目前做GSEA主要有两种办法,一种是使用GSEA的java软件,另一种是使用R语言包,当时还有在线的工具做GSEA...

  • 做GSEA分析你的基因到底该如何排序

    做GSEA分析你的基因到底该如何排序 大家都知道,GSEA最重要的就是数据集的所有背景基因按照某种指标排序好,这样...

  • GSEA分析

    GSEA是非常常见的富集分析方式,以前我们做GSEA需要用依赖java的GSEA软件,那个时候准备分析的文件可能要...

  • GSVA计算原理

    GSVA的用途 一般我们做GSEA都是先进行差异基因分析,然后取差异倍数排序结果进行GSEA。但如果你没有条件进行...

  • ssGSEA算法原理解析

    ssGSEA顾名思义是一种特殊的GSEA,它主要针对单样本无法做GSEA而提出的一种实现方法,原理上与GSEA是类...

  • GSEA的分析汇总-转载

    GSEA的分析汇总 学习GSEA 生信技能树 GSEA的统计学原理试讲 GSEA GSEA这个java软件使用非常...

  • GSVA + limma进行差异通路分析

    一般我们做GSEA都是先进行差异基因分析,然后取差异倍数排序结果进行GSEA。但如果你没有条件进行差异基因分析也可...

  • fgsea做GSEA

    1.导入测试数据,fgesa的examplePathways,exampleRanks测试数据分别是通路的list...

网友评论

本文标题:一文教会你从头开始做GSEA

本文链接:https://www.haomeiwen.com/subject/wpbneftx.html