GSEA基因富集分析R语言版

Python011

GSEA基因富集分析R语言版,第1张

官方github地址

1.安装

library("devtools")

install_github("GSEA-MSigDB/GSEA_R")

2.查看说明文档

??GSEA::GSEA

3.举例

两个主要的输入文件格式:input.ds and input.cls

RNAseq数据 input.ds

GSEA(input.ds = system.file('extdata', 'Leukemia_hgu95av2.gct', package = 'GSEA', mustWork = TRUE),

input.cls = system.file('extdata', 'Leukemia.cls', package = 'GSEA', mustWork = TRUE),   #输入文件

input.chip = system.file('extdata', 'Human_AFFY_HG_U95_MSigDB_7_0_final.chip',package = 'GSEA',mustWork = TRUE),                               #RNAseq无需此参数

gs.db = system.file('extdata', 'h.all.v7.0.symbols.gmt', package = 'GSEA', mustWork = TRUE),

output.directory =  getwd(),    #输出文件夹

doc.string='gsea_result',        # 输出前缀

collapse.dataset = TRUE,      # 与input.chip联用

collapse.mode = 'max',          # 与input.chip联用

reshuffling.type = "sample.labels",    # 生物学重复<7, gene.labels?

nom.p.val.threshold=-1,

fdr.q.val.threshold=0.05,

use.fast.enrichment.routine=T,   #use EnrichmentScore2 to compute random perm. enrich.

#gs.size.threshold.min=15,

#gs.size.threshold.max=500)

4.部分结果

补充:

1.如何读取gmt文件进行操作?

2. 如果要有选择性的进行GSEA分析,如何制作特定的gmt文件?

GSEA(Gene Set Enrichment Analysis)基因集合富集分析是一种计算方法,能够判定一个预先定义的基因集合(比如一个GO term或者一条通路)在两种生物学状态间是否呈现统计学上的显著的一致的差别。GSEA的主要有3个步骤:

最近在做GSEA分析,但是R包直接得到的GSEA的图片实在是丑了点,于是我决定自己重新绘制GSEA图片。

step1. 首先导入GSEA结果数据,选取 top15 的通路进行画图。

step2. 获取每条通路动态的ES得分结果

做的过程中发觉三个都是富集分析,在搜索后,初步的结论是

go,kegg是富集差异显著的基因,gsea是富集差异基因,只要参与,P值在0.049也可以参与富集

但是go,kegg不可以,只能富集显著的

这样的话gsea是对go,kegg的一个补充,可以把不是很显著的基因也做富集分析,从而达到物尽所用,把所有差异基因都可以用上

所以go,kegg之后也可以做gsea,因为就是一个富集分析,只是在文章展示的时候会有筛选,只写好的

go,kegg与用gsea做go,kegg

R包的选择:做go,kegg

R包,然后就是图形展示

用的什么数据,数据格式,直接R包开始就可以

go、kegg尽量用EntrizeID,因为(gene symbol)会引起不必要的缺点(至于为什么。么有测试过,都是别人说的

但是在用symbol转为RntrizeID的时候产生丢掉了一些基因;所以这个在探针转换的时候是否就需要两手准备,一个genesymbol,一个EntrizeID)