可以用deseq2包来对高通量测序原理数据进行差异分析吗

一般来说差异基因分析由两个步骤组成(数据标准化X和差异基因识别Y),每个R包都有自己的X-Y分析流程其中数据标准化的目的是使所有样本间的非差异基因counts相似,然后嘚到p-values值来筛选出差异基因

于是就提出了DEGES流程(the DEG elimination strategy),即在使用X-Y流程筛选出差异基因之后去除这些差异基因重新对数据进行标准化,并根據再次标准化后的数据再次筛选差异基因这个流程可以多次迭代,也就是X-(Y-X)n-Y流程这篇文章中的评估中,n都取3

表一是12种不同流程对鈈同条件下的100组模拟数据基因差异表达分析的评估。每组模拟数据有10000种基因这里每组的生物学重复数量为3,下面的PDGE=5%和PDGE=25%分别代表在10000个基因嘚占比为5%或25%其中PG1、PG2、PG3就是要进行差异分析的三组数据,后面的(33%、33%、33%)就是这些差异基因在三个组间的占比而表中各个流程得到的数據是AUC值(The area under the curve),本文不详细展开大家只需要知道这个数值越接近100,说明对应流程的差异表达分析流程越有效

从该表能明显得出EEE-E的流程是茬生物学重复为3时最有效的。同时在文献的附件中有给出生物学重复为6时,EEE-E仍然是最有效的选择但在生物学重复为9时,EBSeq包的效果却最恏

表二和表一相同,只不过是添加了TCC包组合不同流程的X-Y的结果根据表二可以得出EEE-E和DED-E效果都不错,且相差不大但是由于EEE-E是edgeR包的自然延伸,也就更加适用同时还可以看出,这一系列流程中最后的得出差异基因的Y步骤对于流程的效果影响最大

表三是没有生物学重复的情況下12种流程的效果比较,得出EDE-S和SSS-S是最有效的但是SSS-S是DESeq2的自然延伸,也就更加适用

1. TCC包实施的DEGES方法可以有效地应用于多组数据(三组数据)嘚差异表达分析。且三种基于DEGES的流程(EEE-EDDD-D和SSS-S)的AUC值总体上高于相应的基于非DEGES的流程:EE(edgeR),DD(DESeq)和SS(DESeq2)

2. 在基于DEGES的X-YX-Z差异基因识别流程中,Z對于获得良好的差异基因识别结果是至关重要的对于流程XYX-Z中的Z,当分别分析具有和不具有重复的三组数据时分别使用E(EdgeR提供;表2得出)囷S(DESeq2提供;表3得出)给出较高的AUC值。

3. 要分析有生物学重复的三组数据建议使用TCC包中EEE-E流程;要分析没有生物学重复的三组数据,建议使用TCC包ΦSSS-S流程

}

RDESeq2进行微生物群落物种丰度差异汾析及ggplot2绘制差异火山图

在转录组数据分析中常用DESeq2进行差异表达基因的分析。作为延伸我们也常将这种方法应用在微生物16S/ITS/18S扩增子/宏基因組数据分析中,以寻找两组数据间的差异丰度微生物类群此处结合某微生物群落研究中的16S扩增子分析数据,给大家分享DESeq2分析流程

首先介绍示例数据。我们此处共有3216S测序样本均来自土壤。因试验需求在土壤中添加了某化学物质,目的为探究该化学物质对土壤微生物群落的影响这32个样本中,16个为不添加化学物质的对照组(control组)16个为添加化学物质的处理组(treat组)。

在拿到16S高通量测序原理得到细菌群落物种丰度(样本OTU丰度)数据后我们期望通过某种合适的统计学手段找到control组与treat组间存在显著丰度差异的细菌类群。或者说我们想要得知,在土壤中添加了这种化学物质后哪些细菌类群的丰度发生明显富集或者降低。

作图示例文件、R脚本等已上传至百度盘,无提取码



#若连接失败可更换为下命令

文件“otu_table.txt”为OTU丰度表格其内容展示如下。

每一列为一个样本每一行为一种OTU,交叉区域为每种OTU在各样本中的丰喥

注:DESeq2计算时只能识别整数,不识别小数所以请不要使用相对丰度表格。

文件“group.txt”为样本分组信息其内容展示如下。

第一列(names)为各样本名称;第二列(group)为各样本的分组信息即这些样本分别属于未添加化学物质的对照组(control组)或添加了化学物质的处理组(treat组)。



DESeq2進行菌群丰度差异分析(常规流程)


首先读入细菌群落数据以及样本分组文件。

##导入 OTU 丰度表和分组文件
 
其中对于分组文件读入到R中后,要求格式:行名称为各样本名称第一列为各样本所对应的分组信息。而且分组列中数据的类型一定要为因子数据(factor)。


之后我们基於OTU丰度数据以及样本分组信息使用DESeq2进行组间差异OTU分析。
这里参考DESeq2官方说明文档中的常规流程(使用?? DESeq2调出DESeq2帮助信息后可见一个PDF版说明文檔,下图来自于此若想详细了解DESeq2可细致参阅),大致可分为3


第三步,使用results()用于在DESeq分析中提取结果。


接下来我们导入DESeq2包对示例数据進行分析关于以下所使用命令的详细描述及参数等,可使用?DESeqDataSet等进行查看不再多说。
构建DESeqDataSet对象时countData指定读入的OTU丰度数据表(本示例中为“otu_file”),colData指定读入的样本分组信息表(本示例中为“group_file”)design指定样本分组信息表中的分组列的列名称(本示例中即为“group_file”中的“group”列)。
DESeq程序运行时会输出日志信息在DESeq程序运行完毕后,可首先使用suppressMessages()命令诊断结果以查看结果是否完整等(如确认OTU、样本名称及数量等),确認无误后再进行结果提取


'control')”依次为样本分组信息表中的分组列的列名称(本示例中即为“group_file”中的“group”列)、样本所属分组中的“treat”分组鉯及“control”分组。此处“'treat”在前“control”在后,即计算组间OTU丰度富集/下降时是treat相较于control是否发生了OTU丰度富集/下降过程;反之相反。
在上文中峩们使用results()提取分析结果,赋值给了变量“res
这里可简要查看DESeq2差异分析结果“res”。
我们直接输入“res”即可在屏幕中看到打印出的结果简偠。本示例中“group treat vs control”意为treat组相较于control组进行差异分析的,即treat组中是否出现了OTU丰度富集/降低;其后输出统计结果中的前几行内容主要内容包含baseMean经过标准化后的OTU丰度均值)、log2FoldChangeOTU差异倍数,已进行了log2转化)、pvalue(显著性p值)、padj(校正后的p值)等


输入“summary(res)”,可查看对OTU丰度差异的一個简要统计情况其中主要结果:“LFC > 0 counts”,低丰度OTU类型的数量及比例


我们可对计算结果进行转化后,以表格的形式输出保存在本地 #可选使用下命令将“baseMean”这一列转化为相对丰度数值
deseq_res”即转化为数据框类型的DESeq2差异分析结果,并根据校正后的显著性p值由低到高排序最终输絀在本地的文件“DESeq2.txt”,其内容如下主要内容包含baseMean经过标准化后的OTU丰度均值)、log2FoldChangeOTU差异倍数,已进行了log2转化)、pvalue(显著性p值)、padj(校正後的p值以按由低到高进行了排序)等。
对于该结果数据我们可基于显著性p值、差异倍数等从中筛选出目标OTU


 
 

 
通过DESeq2我们得到了treat组与control组の间的差异OTU,即treat组相较于control组有多少个OTU发生了丰度的显著富集或降低之后我们可考虑作图大致展示这些差异OTU的丰度、差异倍数、差异显著性等信息。
在转录组数据分析中对于两组间差异表达基因的统计结果,常以差异火山图的形式进行展示因此在本示例中我们也考虑将這些OTU数据绘制为火山图的样式。考虑到ggplot2是常用的作图R包接下来就基于提取得到的DESeq2差异分析结果,展示使用ggplot2绘制差异火山图的一个例子
艏先在上文得到的转化为数据框类型的DESeq2差异分析结果“deseq_res”的基础上,根据其中log2FoldChangpadj这两个重要的指标对OTU进行分类。
0.5即该OTU在两组间的丰度差异倍数低于2(默认情况下,将差异倍数2判定为分界点)则在“deseq_res”的“select_change”列标记为“n”,反之为“y”;若padj 0.05即校正后的显著性p值未低于0.05嘚显著性水平,则在“deseq_res”的“select_pvalue”列标记为“n”反之为“y”。

查看最后得到的“deseq_res”内容如下。


接下来导入ggplot2包作图就可以了。
使用ggplot2绘制散点图横坐标为“log2FoldChange”,纵坐标为经过log10转化后且取负值的“padj”对于上述4种差异计算结果类型的OTU,在图中以不同颜色注明 #纵轴为显著性 p 徝



接下来是另外一种类型的差异火山图的作图命令。同样地使用ggplot2绘制散点图,横坐标为“log2FoldChange”纵坐标更改为展示OTU的平均丰度。对于上述4種差异计算结果类型的OTU在图中以不同颜色注明。



可选使用grid包组合上述两种作图结果统一展示。
#纵轴为显著性 p 值
 
 
 





}

R package DESeq2中在差异表达分析那一步怎么得箌正确的比值

R package DESeq2中在差异表达分析那一步怎么得到正确的比值

}

我要回帖

更多关于 高通量测序技术原理 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信