问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

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

创作时间:
作者:
@小白创作中心

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

引用
CSDN
1.
https://blog.csdn.net/weixin_47195452/article/details/145316416

FastQC是由Babraham Bioinformatics团队开发的一款用于生成高通量测序原始数据可交互式质控报告的工具。它支持多种测序类型,包括基因组测序、ChIP-Seq、RNA-Seq和BS-Seq等。FastQC在Windows、Macos和Linux系统中均有对应发行版本,主要功能包括输入BAM、SAM、FastQ文件,快速提供数据质量概况,提供评估数据的图表,输出HTML文件报告等。

一、FastQC简介

FastQC由Babraham Bioinformatics团队出品,该团队的一些官方教程可以参考:Babraham Bioinformatics Training。简单来说,FastQC就是用来生成高通量测序原始数据可交互式质控报告的工具,而对建库方式、文库来源其实无特异性要求(Genomic Sequencing, ChIP-Seq, RNA-Seq, BS-Seq均可)。其在Windows、Macos、Linux系统中均有对应发行版本。主要功能如下:

  1. 输入BAM、SAM、FastQ文件
  2. 快速提供数据质量概况
  3. 提供评估数据的图表
  4. 输出HTML文件报告
  5. 脱机操作可以允许其在无可交互式界面下自动化生成报告(有利于批量处理)

如果你对下面的教程比较迷茫,那么你可以先行学习Linux教程:《十小时学会Linux》、《生信Linux及服务器使用技巧》。如果你的计算机不足以支持下面流程的计算,可按需选用适合自己的计算资源。

二、FastQC使用方法

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

安装FastQC

conda install fastqc

调用FastQC

fastqc -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文件。

三、运行结果示例及解读

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

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

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

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


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

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

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


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

    small RNA-Seq:

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

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

    RNA-Seq:

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

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

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

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

参考:FastQC官方项目页面

四、计算资源

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

本文略有删减,点击查看原文

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号