Rosalind工具库:使用Fastx-toolkit或trimmomatic进行质量控制

简介: 短读质量控制 Read Filtration by Quality由于各种因素,测序过程中一定会存在着错误,要么读错,要么漏读、要读多了。解决这种错误可以从源头,也就是测序仪改进,也可以通过生物信息学的手段,将可能错误的序列过滤掉。

短读质量控制 Read Filtration by Quality

由于各种因素,测序过程中一定会存在着错误,要么读错,要么漏读、要读多了。解决这种错误可以从源头,也就是测序仪改进,也可以通过生物信息学的手段,将可能错误的序列过滤掉。

测序仪的下机数据一般都是FASTQ,第二列存放序列,第四列存放对应碱基的质量。由于空间有限,所以无法直接以0.01%这类形式存放概率,必须要做一些转换,从P值先还算成q值

img_f31331697efaf7a149ed41ffa8561112.png
Q值
import math
p =  0.001
q = - 10math.log10(p)
# 30

Solexa在1.3版本之前的换算方式是-10log10(p/(1-p)),操作非常的溜

从p值换算成q值,依旧需要两个位置进行存放质量,于是需要进一步编码。这一步采用了ASCII码中字符的位置信息来对应q值。但是ASCII码前面32位是不可见的控制字符,肯定是不能用的,于是就需要往后挪挪,那么挪多少呢?不同测序公司又开始搞自己的一套了。

img_319fa655af44071d71a8d38e219f884d.png
不同标准的编码对应

虽然最后的故事是illumina代表了测序届的半壁江山,格式最后都是Illumina 1.8+,采用Phred+33的形式,但是如果用公共数据的时候一定要小心

# Phred+33
chr(30+33)
#'?'

这一步是根据测序质量对低质量的read进行过滤,Rosalind推荐FASTX-Toolkit,这也是我最早使用的质控工具,但是在使用过程前,我们需要简单的判断下这个测序格式是Phred+33还是Phred+64。

grep 2 rosalind_filt_1_dataset.txt  #有结果
grep X rosalind_filt_1_dataset.txt  # 无结果
# 基本上断定这个是Phred33

但是编译好的v0.0.13的FASTX-Toolkit的fastq_quality_filter默认是处理Phred+64,毕竟0.013版本是2012年开发出来的,那个时候主流就是Phred+64。所以只能去自己编译v0.014

题目给我的是p=78,q=24,所以程序按照如下方式运行

tail -n +2 rosalind_filt.txt > rosalind_filt.fq
~/opt/biosoft/fastx_toolkit-0.0.14/bin/fastq_quality_filter -q 24 -p 78 -i rosalind_filt.fq | grep -c '^@Ro'

过滤低质量碱基

如果使用Fastqc发现序列前后几个碱基质量不太好时,我们可以使用trimmomatic过滤掉按照一定的阈值对read前后进行过滤

问题: 给定一个phred33编码的FASTQ文件,和碱基质量阈值q,给出read前后过滤的文件

解决方法: 用trimmomaitc就行了,例如java -classpath trimmomatic-0.22.jar org.usadellab.trimmomatic.TrimmomaticSE -phred33 data/s1.fq data/tmp.fq TRAILING:30 MINLEN:50 就是过滤前后低于30的碱基,然后删掉不足50的read。

tail -n +2 rosalind_bphr.txt > rosalind_bphr.fq
trimmomatic SE -phred33 rosalind_bfil.fq tt.fq LEADING:22 TRAILING:22
目录
相关文章
|
3月前
【PCB设计秘籍】AutoDesk Eagle轻松驾驭:LMC555CN/NOPB器件库下载与添加全攻略,设计效率飙升!
【8月更文挑战第2天】【PCB设计】AutoDesk Eagle如何下载和添加LMC555CN或LMC555CN/NOPB器件的库
53 11
|
6月前
|
Web App开发 SQL 前端开发
性能工具之前端分析工Chrome Developer Tools性能标签
【2月更文挑战第22天】性能工具之前端分析工Chrome Developer Tools性能标签
70 1
性能工具之前端分析工Chrome Developer Tools性能标签
|
图形学 Ruby
【unity learn】【Ruby2D】控制人物运动的两套模式
【unity learn】【Ruby2D】控制人物运动的两套模式
【unity learn】【Ruby2D】控制人物运动的两套模式
|
数据处理
Graphpad Prism9.5.1 (含Win/Mac版) 科研医学生物数据处理绘图软件详细安装教程 亲测有效!!!
GraphPad Prism是一款非常专业强大的科研医学生物数据处理绘图软件,它可以将科学图形、综合曲线拟合(非线性回归)、可理解的统计数据、数据组织结合在一起,除了最基本的数据统计分析外,还能自动生成统计图。
Graphpad Prism9.5.1 (含Win/Mac版) 科研医学生物数据处理绘图软件详细安装教程  亲测有效!!!
|
存储 数据库 数据安全/隐私保护
大型医院PACS系统源代码,VC + MSSQL开发,专业高级三维后处理功能
本套PACS系统为医院提供一个包括放射、超声、核医学、病理、内窥镜、心电图室在内的所有影像检查数字化的一体化解决方案。 它涵盖了传统PACS和RIS系统的所有功能,以构建全数字化影像科为目标,致力于实现对医院所有影像数据的统一管理、影像检查工作流的自动化,及影像诊断的智能化。
202 0
大型医院PACS系统源代码,VC + MSSQL开发,专业高级三维后处理功能
|
传感器 安全 网络协议
【毕设参考】跌倒检测 ESP32+HaaS Python Motion API 快速打造上云的跌倒检测系统
【毕设参考】跌倒检测 ESP32+HaaS Python Motion API 快速打造上云的跌倒检测系统
238 0
|
存储 编解码 人工智能
CDR平面设计软件2023又开始放大招啦!CorelDRAW Graphics Suite 2023有哪些新增功能?
CorelDRAW2023是一款非常专业的电脑图像设计工具。该产品推出了全新的2023版本,在功能和体验上更进一步,最新的填充和透明设备功能可以完全控制任何类型的纹理,适用于网络摄影、印刷项目、艺术、排版等,让你可以更好的进行图像设计图形设计软件
375 0
CDR平面设计软件2023又开始放大招啦!CorelDRAW Graphics Suite 2023有哪些新增功能?
Blender建模软件怎么安装?有哪些好用的插件?
Blender建模软件怎么安装?有哪些好用的插件?
Blender建模软件怎么安装?有哪些好用的插件?
|
Go iOS开发 MacOS
Win11系统下搭建Go lang开发环境更换国内源并且体验宇宙最快框架Iris
最近有同学开始尝试接触Go lang,拥抱新技术永远都会是一个好习惯,之前的一篇文章介绍了[如何在Mac os系统下配置Go lang开发环境](https://v3u.cn/a_id_88),这次我们在Win10系统下进行配置,并且更换国内的安装源,最后再和“全宇宙最快的web框架”--Iris亲密接触一下,对于Iris可能很多朋友并不熟悉,一般Go lang在web开发领域相对著名的框架比如Beego或者Gin都名声在外,这里推荐Iris的原因也并不是因为它源于古希腊女神(彩虹女神)的炫酷名字,而是因为它在goroutine的加持下强大的Go http server的性能。
Win11系统下搭建Go lang开发环境更换国内源并且体验宇宙最快框架Iris
|
数据挖掘
GraphPad Prism 9.4.1英文版科学数据绘图工具(含激活工具)
GraphPad Prism 9 是一款专为科学研究而设计的数据分析和数据绘图软件。
469 0
GraphPad Prism 9.4.1英文版科学数据绘图工具(含激活工具)