(3)转录组之数据质控

质控比较简单,简单到有时你都注意不到他,看看Jimmy老司机是怎么翻车的吧《一个RNA-seq的反思》,或许你将对简单会有不一样的理解。

一、输入数据的准备

fastqc 所需要的输入数据是fastq格式的reads数据或者bam/sam比对数据,所以我们需要先将从SRA上用prefetch下载的sra格式文件做下转换。

source activate biosoft # 首先激活安装有sra-tools的conda环境,我这里是biosoft,你们根据自己的环境改
fastq-dump --split-3 --gzip SRR3589956.sra # 带上--split-3选项可以自动识别并处理单端和双端测序reads, 带上 --gzip对结果压缩下免占空间

如果有很多要dump那就做个循环吧(把下面代码放进fastq_dump.sh)

for i in `~/Downloads/SRR_Acc_List.txt `
do
fastq-dump --split-3 --gzip $i.sra
done # 这里又用到了之前从SRA下载下来的那个列表,其中储存着SRR样本

+在终端运行

bash fastq_dump.sh

二、用fastqc做质检

第一部分运行结果中我们得到了每个样本的双端fastq文件分别是形如SRR3589956_1.fastq.gz和SRR3589956_2.fastq.gz

fastqc --noextract SRR3589956_1.fastq.gz SRR3589956_2.fastq.gz # fastqc可以多个输入

或者做成循环应对重复代码

for i in `~/Downloads/SRR_Acc_List.txt `
do
fastqc --noextract $i\_1.fastq.gz $i\_2.fastq.gz
done

关于fastqc结果,这篇博文《fastqc结果解释》应该是已经讲解的比较详细了,推荐大家看看。

以下是我个人的一些理解
对于质检报告给出的每张图我们都要弄清楚以下三个问题:看什么、怎么看、有何结论

  1. 质检报告概述


主要是对整个质检报告的总结
(1) 看什么?
第一次看肯定是先了解下这12大条都是什么意思(包括三大方向测序准确性、序列具体内容组成和序列特征)。
在这里主要看条目前面的标记。
(2) 怎么看?
绿色勾勾:合格的
黄色叹号:触到了警戒线
红色叉叉:不合格
并不是说都是绿色你的数据就安全了,有多项红色就放弃数据了,查看后面的具体项目内容是很重要的,这步不认真对待后期分析就可能出现你无法解释的结果。
(3) 有何结论
单从我这个数据来看,有三项不合格,一项警告,对于不合格项和警告项往下看的时候要特别关心。

  1. 基础统计信息Basic Statistics

这项主要是测序数据的统计摘要
(1) 看什么?
看下reads长度、GC含量,还可以了解到总共有多少条reads,质量超差的reads有没有
(2) 怎么看?
表格数据应该一目了然了,reads长度=51,GC含量=50%, 不同测序仪能达到的最大读长差别较大,可以去相应官网查询比如这里的illumina可以达到2X150bp; 这个样品测序得到的reads数是28856780条(这个和覆盖度有关)
(3) 有何结论
reads长度符合仪器标准,GC含量符合理论(研究特殊区域要特殊对待)。

  1. 某一位置上所有读段的测序质量评分Per Base Sequence Quality

这项主要反映测序仪对碱基的识别准确性
(1) 看什么?
主要看黄色box(25%和75%分位数)和红色短线(中位数)处于的位置,其实就是个boxplot。
(2) 怎么看?
横坐标各数字表示读段上的位置,最大值即为读长。纵坐标表示质量的好坏(判断的准确性),被分成了绿(合格)、黄(警戒)、红(不合格)三段。
(3) 有何结论?
全在绿色范围,质量超好,说明透过测序仪测得的数据接近真实碱基排列。前13个的box几乎被压成了一条线说明每条reads上该部分,测序仪对其识别的能力几乎一样没有分别,可以推断可能的原因就是序列是固定的几种。

  1. 每次荧光扫描的质量Per Tile Sequence Quality

这项是针对illumina数据的
(1) 看什么?
看图上有无亮色出现
(2) 怎么看?
冷颜色表示高于平均值,亮颜色表示低于平均值
(3) 有何结论?
我用的这个数据全图冷颜色所以tile质量好

  1. 读段的质量得分分布情况Per Sequence Quality Scores

前两项观察角度是单个点,这项针对的单位是读段
(1) 看什么?
一看横坐标分值范围,二看红色曲线的走势,三看峰的位置。
(2) 怎么看?
横轴上数值应该比较大(>20的分数才是可靠的),红线上的每一点表示分值(X轴)所对应的reads的数量(Y轴),面积就是reads总数了。
(3) 有何结论?
从图中可以看到红线为单峰(窄而高),并且分值在38(>>20),所以每条reads的可靠性很高。

  1. 每个位置的4种碱基的比例图Per Base Sequence Content

前面数据准确性确认之后就可以看看具体的数据内容了,这项看的是每个位置上ATCGG的比例。
(1) 看什么?
看四种颜色的线
(2) 怎么看?
每条线在某一位置上对应的Y值代表其比例,
如果序列是随机的那么比例应该在25%左右,四条线应该几乎在同一水平线位置。
(3) 有何结论?
四条线总体平行行走于25%水平线说明总体质量可以,问题出在前10个位置,四条线严重分离,说明有碱基偏向性,很可能就是接头序列。

  1. GC含量分布图Per Sequence GC Content

与前一项以位置为单位不同,这里是以reads为单位
(1) 看什么?
看红色的线与蓝色线的走势是否接进
(2) 怎么看?
蓝色的线为理论上随机序列GC含量的分布(正态分布),红线与蓝线越是类似越符合随机序列(自然序列),特殊研究除外
(3) 有何结论?
两线接近,质量可靠

  1. 每个位置上N的比例Per Base N Content

这里没什么说的,主要就是看看是不是N的概率很大
(1) 看什么?
看红线位置
(2) 怎么看?
N表示测序仪不能识别ATCG,X轴是表示reads的每一个位置,某一位置红线高就表示在所有读段中该位置上出现N的比例高
(3) 有何结论?
红线接近0,说明几乎所有位置都被识别为ATCG之一。

  1. 读段长度分布Sequence Length Distribution

这项就是所有reads的长度分布
(1) 看什么?
看红线走势
(2) 怎么看?
看峰值对应的X轴坐标
(3) 有何结论?
所有reads长度都是51

  1. 序列重复的水平Duplicate Sequences

重复次数为一次的比例越高越好

  1. 大量重复出现的序列Overrepresented Sequences

我用的这个数据fastqc检测出一条多重复序列,重复次数36788次,占总体比较的0.127%,推测为TruSeq接头。

  1. 每一位置上是常用接头序列的比例Adapter Content
  2. 短序列的重复数Kmer Content

Kmers are just words (chunks of sequence) of length k

推荐阅读更多精彩内容