转录组分析综述A survey of best practices for RNA-seq data analysis

转录组分析综述

转录组研究综述文章解读

今天介绍下小编最近阅读的关于RNA-seq分析的文章,文章发在Genome Biology 上的A survey of best practices for RNA-seq data analysis 。由于文章较长和枯燥,小编认为重要的信息,已经加粗加红,可以直接看重要信息。不要问我为啥这么好,请叫我雷锋。

摘要

现在RNA-seq数据使用广泛,但是没有一套流程可以解决所有的问题。我们重点关注RNA-seq分析中的重要的几步:实验设计,质控,read比对,表达定量,可视化,差异表达,识别可变剪切,功能注释,融合基因检测,eQTL定位等。

文章会讨论每一步分析中的重点和面临的问题,另外最后说明了RNA-seq如何和其他数据相结合分析的。

背景

利用转录组数据来识别转录本和表达定量,是转录组数据的核心作用。由于这个作用,他可以不依赖其他组学信息,单独成为一个产品项目RNA-seq 测序。所以导致RNA-seq 彻底的火了起来。这之后出现了很多的行业标准和分析文档。这使得新的用户为了做好实验,不得不去认识和理解所有的实验步骤。

目前的情况是没有一成不变的流程,整个分析过程都是根据不同的物种,不同的设计目的进行变化的。本文中我们只关注常规RNA-seq分析。也就是摘要中主要说的那几部分。

同时,文章指出在流程的整个过程中都应该添加check point  以期得到好的结果。

1、实验设计

想要获得感兴趣的生物学答案,实验设计一定要合理。首先要对数据的建库类型,测序深度和生物学重复进行选择。另外就是保证测序机器运行充分,尽量少的产生无效数据。

这里我们知道对转录组测序存在两种方法:检测polyA和核糖体剔除。对于真核而言,通常利用第一种方法,而对于细菌,没有polyA,应该用第二种。

转录组分析综述A survey of best practices for RNA-seq data analysis

文中指出转录组也应该多测些长片段,这可以提供比对效率和转录本识别能力。利用那种数据取决与分析的目的。如果研究的物种是注释非常好的,只是来研究其表达水平,利用便宜和短的se就够啦。但是如果注释的不好的话,pe和长read 能发挥好的作用。

对于测序深度,取决于转录本的复杂程度,太低和太高都不好。

关于重复,应该是包括技术导致的重复,这个很难处理掉,只能在实验的时候,多加小心,尽量避免。而对于人为设定的生物学重复,利用利用统计学工具进行过滤。

转录组分析综述A survey of best practices for RNA-seq data analysis
在实验设计中,如果样品太多,应该按照组别进行处理。这样可以减少错误。

2、RNA-seq分析

RNA-seq文库制备过程包括:RNA fragmentation, cDNA synthesis, adapter
ligation, PCR amplification, bar-coding, and lane loading)。这里要注意数据的质量控制,文库大小标准化,缩小碱基偏好性: such as the use of adapters with random nucleotides at the extremities or the use of chemical-based
fragmentation instead of RNase III-based fragmentation.

如果样品太多,不得不用分开测序,或者在不同的lane上,一定要对batch effect 进行处理,以防其他因素影响实验。

(1)质控点

<1>、原始数据

包括GC含量,数据质量,有无接头,复制比例等。这里同一个物种的样品测序的数据中信息应该是一致的。如果相差超过30%,应该被去掉。

这里监控的软件推荐fastqc和NGSqc。另外read两端的数据如果质量很低,应该被切掉,这里推荐工具:FASTX-toolkit和Trimmomatic。

<2>、read 比对

一个衡量标准是read比对效率。

文章测试中70-90%的read比对上了人的基因组。

另外一个是uniformity of read coverage on exons and the mapped strand.在利用polyA选择进行转录组测序中如果read富集在3端,可能预示数据质量过低。

还有就是GC含量评估了碱基的偏好性。推荐的软件:RSeQC、Qualimap。

<3>、表达定量

检测GC含量和基因长度的偏好,这样可以更好的进行标准化,推荐的软件

NOIseq EDASEQ。

<4>、生物学再现

这里要对样品相关性进行评估,比对spearman R2 >0.9。同时一定要对batch effect 进行评估和过滤。这里主要可以利用PCA进行分析。(详情见上一篇文章)

<5>、转录本识别

如果有参考,直接比对就可以啦,当时如果没有参考,这里首先爱你需要进行组装,然后定进行表达定量。这里建立用来组装的和定量的数据要有从继性和同步性。

(2)、比对

(3-1)、转录本识别

有参考的情况下,对转录本进行识别这里用到的软件根据不同的情况有以下几个:GRIT、Cufflinks、StringTie、Augustus(辅助基因预测)等

利用短的序列其实是很难得到全长转录本的,同时起始和结尾预测也不准确。

转录组分析综述A survey of best practices for RNA-seq data analysis

(3-2)、从头组装

如果没有参考,或者参考比较糟糕,我们需要自己从头组装。主要的软件:SOAPdenovo-Trans [30], Oases [31], Trans-ABySS [32] or Trinity [33].对与低表达的区域,覆盖太低,很难组装出来,read覆盖过高,又容易组装错误。这里建议如果存在多个样品的时候,建议进行混样组装。

转录组分析综述A survey of best practices for RNA-seq data analysis

(4)、转录本表达定量

通常都是通过read比对来做,也有通过kmer做的。可以利用raw counts of mapped read 进行评估,但是这个指标没有考虑基因的长度和其他的因素。RPKM是一个去除了基因长度和文库影响的组内标准化的指标,同样的指标还有FPKM,RPKs,TPM等。主要的软件:Cufflinks,RSEM (RNA-Seq by Expectation Maximization) , eXpress , Sailfish and kallisto 

(5)、差异表达分析

常用的软件有很多,在使用的使用要注意每种软件使用的数据分布特征。

同样这里很重要的是一定要对batch effect进行评估和过滤(COMBAT

)目前鲜有软件对于不同的数据都表现良好,因此建议对于重要的结果,利用多个软件综合进行分析。

(6)、可变剪切分析

方法1:transcript expression and total gene expression  rSeqDiff:uses a hierarchical likelihood ratio test to detect differential gene expressionwithout splicing change and differential isoform expression simultaneously 方法2: exon-based  approach   detects signals of alternative splicing by comparing the distributions of reads on exons and junctions of the genes between the compared samples;

转录组分析综述A survey of best practices for RNA-seq data analysis

(7)、可视化

用户需要通过可视化看到read覆盖在基因上的变化,以此来对结果鲁棒性进行评估。

推荐的软件:UCSC browser、Integrative Genomics Viewer (IGV)、Genome Maps、Savant 、RNAseqViewer等。

另外文章还介绍了融合基因检测,sRNA和功能注释等。

然后文章探究了RNA-seq和其他数据进行结合分析,包括基因组数据,甲基因数据,Chromatin features、MicroRNAs、Proteomics and metabolomics等。

最后文章对单细胞测序技术和三代测序进行对转录组测序的影响进行了说明:

single cell studies are meaningful only when a set of individual cell libraries are compared with the cell population, with the aim of identifying subgroups of multiple cells with distinct combinations of expressed genes   Long-read sequencing provides amplification-free, singlemolecule sequencing of cDNAs that enables recovery of full-length transcripts without the need for an assembly step

上一篇:utility.py:61: FutureWarning: Using a non-tuple sequence for multidimensional indexing is deprecated; use `arr[tuple(seq)]` instead of `arr[seq]`. In the future this will be interpreted as an array in


下一篇:[Effective JavaScript 笔记]第49条:数组迭代要优先使用for循环而不是for...in循环