一文掌握fastqc使用及结果解读

01、写在前面

fastqc由Babraham Bioinformatics团队出品(该团队的一些官方教程:

https://www.bioinformatics.babraham.ac.uk/training.html),简单来说fastqc就是用来生成高通量测序原始数据可交互式质控报告的工具,而对建库方式、文库来源其实无特异性要求(Genomic Sequencing, ChIP-Seq, RNA-Seq, BS-Seq均可)。其在Windows、Macos、Linux系统中均有对应发行版本。主要功能如下

1、输入BAM、SAM、FastQ文件

2、快速提供数据质量概况

3、提供评估数据的图表

4、输出HTML文件报告

5、脱机操作可以允许其在无可交互式界面下自动化生成报告(有利于批量处理)

如果你对下面的教程比较迷茫,那么你可以先行学习Linux教程:

十小时学会Linux

生信Linux及服务器使用技巧

如果你的计算机不足以支持下面流程的计算,可按需选用适合自己的计算资源:

共享(经济实惠):有root权限的共享服务器

独享(省电省心):生信分析不求人

实体(稳定高效):为实验室准备一份生物信息学不动产

访问链接:https://biomamba.xiyoucloud.net/

02、代码

fastqc的使用非常简单,conda的教程大家可以参考:生信软件管家——conda的安装、使用、卸载

安装fastqcconda install fastqc# 调用fastqcfastqc -t 12 -o out_path sample1_1.fq sample1_2.fq

以上命令、选项参数的含义是:

fastqc:这是命令行中调用FastQC程序的方式。

-t 12:这个参数指定FastQC将并行使用的线程数为12。这意味着程序将尝试同时处理多个分析步骤,以加快整个分析过程的速度。

-o out_path:这个参数用于指定输出结果的目录,out_path应该被替换为你希望存放结果文件的具体路径。FastQC会在这个目录下生成多个文件,包括每个样本的质量报告。

sample1_1.fq sample1_2.fq:这些是输入文件的名称,代表你希望分析的测序数据文件。在这个例子中,命令分析了两个文件,通常代表一个样本的双端测序数据(sample1_1.fq和sample1_2.fq)。这两个文件分别包含了同一个样本的正向和反向reads文件。

03、运行结果示例及解读

这里有几个作者提供的fastqc运行结果示例:

链接:https://pan.baidu.com/s/1YNkhY3-sefIJV2bCzQqysw?pwd=70ui

解读

一份完整的fastqc结果包含以下内容:

1.png

每个模块都很好理解,但是需要了解各种测序方法及情况下这些模块的特征:

1、Per base sequence quality:

可以看到正常的结果碱基质量全在Q30以上,而质量低的结果包含大量G30以下的序列,且质量随着读长增加而下降。

2.png
3.png

而三代测序,例如PacBio的测序质量通常很低:

4.png

2、Per tile sequence quality

每个tile测序情况,横轴表示碱基位置,纵轴表示tile的index编号,这个图主要是为了防止在测序过程中某些tile受到不可控因素的影响而出现测序质量偏低,蓝色表示测序质量很高,暖色表示测序质量不高。tile:每一次测序荧光扫描的最小单位。纵轴是tail的Index编号。检查reads中每一个碱基位置在不同的测序小孔之间的偏离度,蓝色表示低于平均偏离度,偏离度小,质量好;越红表示偏离平均质量越多,质量也越差。如果出现质量问题可能是短暂的,如有气泡产生,也可能是长期的,如在某一小孔中存在残骸,问题不大。

5.png
6.png

3、Per sequence quality scores

每个reads的平均质量分布,可以看出低质量结果会在Q30以下的部位出现一些杂峰,而高质量结果的峰值在Q30以上且无杂峰

7.png
8.png

4、Per base sequence content

reads中对应位置上的平均碱基比例,由于样本、扩增、建库、测序的偏好性,四种碱基的含量未必严格遵循25%,但不应随读长的增加而剧烈改变,因此好的结果曲线相对平滑,而坏的测序结果显示各曲线存在抖动的情况。机器刚开始运行时会在reads开始处出现一些不稳定的现象,可以酌情剪切一定长度的reads。small RNA-Seq可能会出现各碱基含量极不稳定的情况。

9.png
10.png
11.png

small RNA-Seq:

12.png

RRBS:

基因组简化甲基化测序(RRBS,RRBS测序(Reduced Representation Bisulfite Sequencing)是一种准确、高效、经济的DNA甲基化研究方法,通过酶切富集启动子及CpG岛区域,并进行Bisulfite测序,同时实现DNA甲基化状态检测的高分辨率和测序数据的高利用率。因此RRBS测序的碱基分布应该多以CG开始(但总体GC含量未必很高)。

13.png

5、Per suquence GC content

各个序列GC分布情况应该近似正态分布(如蓝色曲线所示),低质量测序会偏离理论曲线。一般来说基因组测序的GC含量较为稳定,一般在45%~55%,而RNA-Seq有时会显得很离谱。并且无论与正态分布相比偏移多少,都应只出现一个峰,若出现多个峰则可能有其他物种的污染。

14.png
15.png

RNA-Seq:

16.png

6、Per base N content

显然任何序列、任何位置位置下N的出现都不是一个好信号,这个值应该越低越好

17.png
18.png

7、Sequence Length Distribution

机器没坏、软件没bug的情况下,序列长度应是一致的

19.png
20.png

8、Sequence Duplication level

正常情况下很少会出现一模一样的read,如果出现大量重复的read(count大于0.1%)会被认定为异常重复序列,可能是由技术序列或特殊的生物序列引入的,出现这些序列时fastqc会自动给出序列碱基以及可能的来源。RNA-Seq数据中会存在由大量线粒体mRNA所引入的重复序列,这也会导致其他指标如GC含量的波动。

21.png
22.png
23.png

9、Adaptor Content

反映reads对应位置的测序接头含量,未修剪的reads会在两端存在接头,而修剪后的reads接头含量显然应该趋近于零。

24.png
25.png

参考:https://www.bioinformatics.babraham.ac.uk/projects/fastqc/

最后、计算资源

Linux基础教程已经收官,教程回顾可点击:Linux基础教程。当然,我们后续也会推出更多的Linux与生信相关教程,大家可以点击收藏方便持续关注:生信Linux及服务器使用技巧

大家如果需要算力/服务器也可以点击这个系列选到自己心仪的设备:

有root权限的共享服务器

生信分析不求人
为实验室准备一份生物信息学不动产

有的同学使用Rstudio-server时可能会遇到卡顿的情况,本文就带大家一起找一找可能存在的原因并给出解决方案。

其它Rstudio-server的使用技巧可见:如何连接终端和Rstudio-server
Rstudio-server的安装、配置、维护
在Rstudio中使用同一个R包的不同版本
Rstudio常见使用技巧

版权声明:
作者:siwei
链接:https://www.techfm.club/p/188601.html
来源:TechFM
文章版权归作者所有,未经允许请勿转载。

THE END
分享
二维码
< <上一篇
下一篇>>