一文掌握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教程:
如果你的计算机不足以支持下面流程的计算,可按需选用适合自己的计算资源:
共享(经济实惠):有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、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接头含量显然应该趋近于零。
参考:https://www.bioinformatics.babraham.ac.uk/projects/fastqc/
最后、计算资源
Linux基础教程已经收官,教程回顾可点击:Linux基础教程。当然,我们后续也会推出更多的Linux与生信相关教程,大家可以点击收藏方便持续关注:生信Linux及服务器使用技巧。
大家如果需要算力/服务器也可以点击这个系列选到自己心仪的设备:
有的同学使用Rstudio-server时可能会遇到卡顿的情况,本文就带大家一起找一找可能存在的原因并给出解决方案。
其它Rstudio-server的使用技巧可见:如何连接终端和Rstudio-server
Rstudio-server的安装、配置、维护
在Rstudio中使用同一个R包的不同版本
Rstudio常见使用技巧
共有 0 条评论