高质量生信文章收录

GASE相关知识(Linux)

2019-12-23  本文已影响0人  小鱼儿_Y

(Gene Set Enrichment Analysis,GSEA

GSEA概念:

GSEA:(基因集富集分析)用来评估一个预先定义的基因集的基因在与表型相关度排序的基因表中的分布趋势,从而判断其对表型的贡献。其输入数据包含两部分,一是已知功能的基因集 (可以是GO注释、MsigDB的注释或其它符合格式的基因集定义),一是表达矩阵,软件会对基因根据其于表型的关联度(可以理解为表达值的变化)从大到小排序,然后判断基因集内每条注释下的基因是否富集于表型相关度排序后基因表的上部或下部,从而判断此基因 集内基因的协同变化对表型变化的影响。

GSEA分析原理:

给定一个已经排序的基因列表L和一个预先定义的基因集合(比如某个通路的所有基因)基因集S ,计算S里面的成员s在L里面是随机分布还是主要聚集在L的顶部(排序的前面)或底部(排序的后面),如下图。这些基因排序的依据是可以是不同表型状态下的表达差异也可以是某个自己定义的排秩关系,若研究的基因集S的成员显著聚集在L的顶部或底部,则说明此基因集成员对表型的差异有贡献,也是我们关注的基因集。


原理图

GSEA中几个关键概念:

1、计算富集得分 (ES, enrichment score): ES反应基因集成员s在排序列表L的两端富集的程度。计算方式是,从基因集L的第一个基因开始,计算一个累计统计值。当遇到一个落在s里面的基因,则增加统计值。遇到一个不在s里面的基因,则降低统计值。每一步统计值增加或减少的幅度与基因的表达变化程度(更严格的是与基因和表型的关联度)是相关的。富集得分ES最后定义为最大的峰值。正值ES表示基因集在列表的顶部富集,负值ES表示基因集在列表的底部富集。
2、评估富集得分(ES)的显著性。通过基于表型而不改变基因之间关系的排列检验 (permutation test)计算观察到的富集得分(ES)出现的可能性。若样品量少,也可基于基因集做排列检验 (permutation test),计算p-value。
3、多重假设检验矫正。首先对每个基因子集s计算得到的ES根据基因集的大小进行标准化得到Normalized Enrichment Score (NES)。随后针对NES计算假阳性率。(计算NES也有另外一种方法,是计算出的ES除以排列检验得到的所有ES的平均值)
4、Leading-edge subset,对富集得分贡献最大的基因成员。

GSEA分析的目的:

GSEA的安装:

GSEA和Cytoscape的安装都需要java环境,所以首先要搭建java环境。我使用的是conda建立的虚拟环境。

conda activate
conda create -n java    #建一个java环境,将java环境与外部环境隔绝起来
sudo dpkg -l | grep openjdk   可以查看可供安装的java版本741sudo apt-get install openjdk-8-jre   #安装java
java -version     #可以查看java的版本

java环境构建好之后就可以安装GSEA,去官网下载GSEA软件包,我下载的软件包版本如下:

GSEA
然后解压缩,运行gsea.sh文件既可以完成GSEA软件的安装。

GSEA分析自定义功能注释集:

我的数据是小麦转录组数据,以此为例,待分析的数据是小麦的两组实验 (mut_vs_wt),每组各2个生物重复,故一共4个样本。各个样本有唯一的名称:CS1、CS2、Dasypyrum1、Dasypyrum2。
1、准备数据:
需要三个输入文件分别是:基因表达矩阵.gct文件;样品分组信息.cls文件;功能基因集.gmt文件(gene sets)

a 、基因表达文件:

基因表达文件不用差异基因表达文件。可以直接使用Excel文件生成(测序公司一般都会提供这个文件),也可以自己构建基因表达数据。例如使用DESeq2里面的counts()函数对dds对象提取标准化之后的数据,经过简单的处理之后,就可以输入GSEA进行分析了。
数据的前期处理是使用Hisat2对转录组数据进行索引,然后使用HTSeq统计表达量counts,之后使用DESeq2对起进行数据标准化。

NormDats <- counts(dds, mormalized = TRUE)

获得基因表达数据文件后将其整理成GSEA所需要的文件格式,如下图:


基因表达文件
b 、样品分组信息文件:

本质上是一个文本文件,需按照以下格式书写:


样品分组信息文件格式
c 、功能基因集文件:

GSEA官网只提供了人类的数据,但是掌握了官网中基因表达矩阵和注释文件的数据格式,就可以根据自己研究的物种,在公共数据库下载对应物种的注释数据,自己制作格式一致的功能基因集文件,这样便就可以做各种物种的GSEA富集分析了。
基因集数据库文件的格式:


功能基因集文件
awk 'BEGIN{OFS=FS="\t"}{anno=$1"\t"$2; a[anno]=a[anno]==""?$3:a[anno]"\t"$3}END{for(i in a) print i,a[i]}' ID_GOanalisiy.txt > GOanalisiy_ID_only.gmt
GSEA功能基因集格式文件

由此,GSEA分析所需要的3个文件已经整理完成。

d 、GSEA分析:
分析图1
如此GSEA的分析就完成了,后面再写对其结果的分析。

【参考】:

一文掌握GSEA富集分析
常见GSEA分析的疑问
GSEA使用实战

上一篇下一篇

猜你喜欢

热点阅读