作用

质量分析

下载安装

官网:http://www.bioinformatics.babraham.ac.uk/projects/fastqc

unzip fastqc_v0.11.8.zip
cd FastQC
chmod 755 fastqc
echo 'export PATH=/home/li.han/Softwares/FastQC:$PATH' >> ~/.bashrc

参数

-h --help           Print this help file and exit
-v --version        Print the version of the program and exit
-o --outdir         生成报告文件的储存路径
--extract           使用这个参数是让程序不打包(默认会打包成一个压缩文件)
--noextract         结果文件压缩
-t --threads        选择程序运行的线程数,每个线程会占用250MB内存(一般与文件数量一致就好)
-q --quiet          安静运行模式(不选这个选项,程序会实时报告运行的状况)
-f --format         输入文件格式.支持bam,sam,fastq文件格式
-c --contaminants   制定污染序列。文件格式 name[tab]sequence
-a --adapters       指定接头序列。文件格式 name[tab]sequence
-k --kmers          指定kmers长度(2-10bp,默认7bp)

运行

fastqc -t <n> *.gz   

结果解读

1. Basic Statistics

%GC: GC含量,可以帮助区别物种,人类细胞42%左右

2. Per base sequence quality

reads上每个碱基的质量

  • 横轴:测序序列的每个碱基
  • 纵轴:质量得分,使用Fred quality,Q=-10*lg(p),p为碱基测序错误概率。

红色表示中位数,蓝线是平均数,黄色是25%-75%区间,触须是10%-90%区间。

一般能用的数据都要求至少Q20,若每个碱基的下四分位线在30分以上,则认为测序质量非常好。二代测序,最好是达到Q20的碱基要占95%以上(最差不低于90%),Q30要求大于85%(最差也不要低于80%)

一般情况下,reads首尾质量较差,刚开始测序,合成反应还不是很稳定,但是酶的质量还很好,所以会在高质量区域内有一定的波动(这里的1-30bp),后来稳定了,但是随着时间的推移,酶的活力逐渐下降,特异性也变差,所以越往后出错几率越大。

若任一位置的下四分位数低于10或中位数低于25,报"WARN";
若任一位置的下四分位数低于5或中位数低于20,报"FAIL"。

3. Per tile sequence quality

显示各个tile的序列质量情况,检查reads中每一个碱基位置在不同的测序小孔之间的偏离度,蓝色表示低于平均偏离度,偏离度小,质量好;越红表示偏离平均质量越多,质量也越差。如果出现质量问题可能是短暂的,如有气泡产生,也可能是长期的,如在某一小孔中存在残骸,问题不大。

4. Per sequence quality scores

每条序列的测序质量分布

  • 横轴:序序质量Q值
  • 纵轴:每个质量值对应的reads数目

一般认为90%的reads测序质量在35分以上,则认为该测序质量非常好,只要大部分都高于20就说明比较正常
当测序质量峰值小于27(错误率0.2%)时报"WARN";
当峰值小于20(错误率1%)时报"FAIL"。

5. Per base sequence content

统计reads每个位置ATCG四种碱基的分布:

  • 横轴:碱基位置
  • 纵轴:百分比

因为随机的文库中,正常情况下所有位置出现某种碱基的概率是相近的,因此好的测序结果中四条线应该平行且接近。

当部分位置碱基的比例出现bias时,即四条线在某些位置纷乱交织,往往提示我们有overrepresented sequence的污染。

当所有位置的碱基比例一致表现出bias时,即四条线平行但分开,往往代表文库有bias (建库过程或本身特点),或者是测序中的系统误差。
当任一位置的A/T比例与G/C比例相差超过10%,报"WARN";
当任一位置的A/T比例与G/C比例相差超过20%,报"FAIL"。

6. Per sequence GC content

统计reads的平均GC含量分布

  • 横轴:平均GC含量
  • 纵轴:每个GC含量对应的序列数量

红线是实际情况,蓝线是理论分布(正态分布,均值不一定在50%,而是由平均GC含量推断的)。

曲线形状偏差的原因:

  1. 文库的污染,GC可以作为物种特异性根据,这里出现了其他的峰有可能混入了其他物种的DNA
  2. 目前二代测序基本都会有序列偏向性(所说的 bias),也就是某些特定区域会被反复测序,以至于高于正常水平,变相说明测序过程不够随机。这种现象会对以后的变异检测以及CNV分析造成影响

形状接近正态但偏离理论分布的情况提示我们可能有系统偏差。

偏离理论分布的reads超过15%时,报"WARN"

偏离理论分布的reads超过30%时,报"FAIL"。

7. Per base N content

统计reads每个位置N的比率
reads某个位置无法确定是何种碱基时,使用N代替;
正常情况下,N的比例是很小的,所以图上常常看到一条直线,但放大Y轴之后会发现还是有N的存在,这不算问题。当Y轴在0%-100%的范围内也能看到“鼓包”时,说明测序系统出了问题。
当任意位置的N的比例超过5%,报"WARN";
当任意位置的N的比例超过20%,报"FAIL"。

8. Sequence Length Distribution

reads长度分布
为了防止建库或者测序时有一些不规则长度的序列也被进行测序而进行的一个对长度的统计,当所有序列的长度不一样,fastqc就会警告。
当reads长度不一致时报"WARN";
当有长度为0的read时报“FAIL”。

9. Sequence Duplication Levels

序列完全一样的reads的频率

  • 横坐标:重复的次数
  • 纵坐标:duplicated reads占unique reads种数百分比

fastqc抽取reads文件前100,000条reads统计其重复情况。重复数目大于等于10的reads被合并统计,这也是为什么我们看到上图的最右侧略有上扬。大于75bp的reads只取50bp进行比较。由于reads越长错误率越高,所以其重复程度仍有可能被低估。

产生duplication的原因:

  1. 测序本身就会产生重复reads,测序深度越高,reads重复数越大
  2. 如果重复出现峰值,就提示可能存在偏差(如建库过程中的PCR duplication)
  3. 一般转录组测序的结果中duplication level都比较高,外显子组测序中duplication level比较低

当非unique的reads占总数的比例大于20%时,报"WARN";
当非unique的reads占总数的比例大于50%时,报"FAIL“。

10. Overrepresented sequences

过度重复出现的序列的统计信息

取前200,000进行统计,大于75bp只取50bp

发现超过总reads数0.1%的reads时报”WARN“

发现超过总reads数1%的reads时报”FAIL“

11. Adapter Content

Adapter序列在reads中出现概率

软件内置了四种常用的测序接头序列, fastqc 有一个参数-a可以自定义接头序列

接头序列统计,>5%时是Warning,>10%时是Failure。

12. Kmer content

重复短序列

出现的原因:

  1. 没有去除软件内置的adapter或者没有使用-a参数自定义adapter
  2. 序列本身重复度较高,例如在建库PCR过程出现序列偏向性bias,这在转录组测序中确实存在

fastqc v0.11.8相关推荐

  1. Win7(Win2003)下安装Node.js(版本号:v0.11.0)提供下载

    今天试验一个项目,需要Win7下安装Node.js做模拟,试了N多个版本,都不支持win7(Win2003)这种老系统,最后终于试出来一个(版本号:v0.11.0)提供下载. Node.js_v0.1 ...

  2. 针对Typora for Win v0.11.18最后一个免费版本安装后提示更新解决办法This beta version of Typora Q is expired

    安装Typora for Win v0.11.18打开后提示更新到最新版 This beta version of Typora Q is expired, please download and i ...

  3. Windows Terminal Preview v0.11 发布:新的字体和主题

    微软发布了 Windows Terminal Preview 0.11 版本,这是 1.0 版本发行之前的最后一个主要更新,从现在开始之间的版本将是该版本的修订版. 本土化  这是第一个支持非英语 U ...

  4. NanoMQ Newsletter 2022-08|v0.11:MQTT 5.0 + MQTT over QUIC 桥接,新增 HTTP API 监控客户端状态

    8 月,NanoMQ 继续保持稳步更新.最新的 0.11.0 版本已于 8月底正式发布(https://github.com/emqx/nanomq/releases/tag/0.11.0).此版本继 ...

  5. Omni Core v0.11.0 rpc-api

    JSON-RPC API Omni Core 是 Bitcoin Core 的一个分支,在上面添加了 Omni 协议功能支持作为一个新的功能层.因此,与 API 的交互以与比特币核心相同的方式 (JS ...

  6. 学习如何利用docker建立容器,然后用fastqc分析数据

    打开centos7,打开终端,输入su root和密码后,进入管理员权限 Docker :: Anaconda.org   #anaconda下载各种东西,可查找的网 docker images #查 ...

  7. 文献精读丨GWAS+TRN多组学方法揭示小麦穗发育调控过程

    文献精读笔记 英文题目:Systematic mining and genetic characteriza:tion of regulatory factors for wheat spike de ...

  8. Linux yest2图形安装ftp,(伪)从零开始学转录组:软件安装

    生信技能树的转录组学习开班了, 第一个任务是安装软件, 于是我花了一个下午时间和Linux斗智斗勇. 系统准备 windows10: Unbuntu on windows10. 至于如何win10上开 ...

  9. 随机宏基因组测序数据质量控制和去宿主的分析流程和常见问题

    为进一步提高<微生物组实验手册>稿件质量,本项目新增大众评审环节.文章在通过同行评审后,采用公众号推送方式分享全文,任何人均可在线提交修改意见.公众号格式显示略有问题,建议点击文末阅读原文 ...

最新文章

  1. Java--对象与类(三)
  2. 全球首家!苹果市值达 3 万亿美元,创历史新高
  3. 2020年,对薪资不满意的程序员要注意了...
  4. iOS开发 nil Nil NULL NSNull 的使用
  5. 【项目管理】认识项目相关方(干系人)管理
  6. 关于VCP(Virtual Com Port)拓展的调试经历(一)
  7. Redis桌面客户端 Redis Studio
  8. 绕开登录进行爬虫_爬虫小偏方:绕开登陆和访问频率控制
  9. 在生产服务器上要注意dbgsvc.exe
  10. 第三十七课.宽度学习
  11. python计算身份证最后一位数字代表什么_一个计算身份证号码校验位的Python小程序...
  12. 基于s32k146的IO口模拟串口
  13. PCFG句法分析之CYK算法
  14. UPC 维修栅栏(基本状态转移)
  15. C# AutoMapper的使用
  16. 对文件或文件夹进行删除、移动、windows10重命名等操作时,系统可能提示“操作无法完成,因为其中的文件夹已在另一程序中打开,请关闭该文件或文件夹,然后重试
  17. WP-AutoPost自动采集插件 全自动更新你的WordPress站点
  18. 个人资源分享【建议收藏,持续更新】
  19. graphics.h头文件常用函数与安装
  20. 1.浮动 float

热门文章

  1. U盘里的文件怎么会不见了
  2. 三个选择框,当前框选过之后的数据其他两个不能选择
  3. java调用jacob_使用Java中的JACOB运行个人宏
  4. 安装ubantu-----服务器开发之路1
  5. 7-20 打印九九口诀表(C语言版)
  6. 电脑HDMI接电视 设置耳机输出声音
  7. 深度解析IPFS是什么
  8. linux上的客户端连接window上的服务器
  9. Git 彻底删除大文件
  10. Linux内核调试方法总结