查看原文
其他

(12)一些QC软件教程-生信菜鸟团博客2周年精选文章集

1227278128 生信技能树 2022-06-07

包括下面几个软件的用法,是我刚入门写的了,感兴趣的去我博客搜索看看,意义不大,我就复制粘贴那些内容了,我讲一点别的:

solexaQA 对测序数据进行简单过滤

RSeQC对 RNA-seq数据质控

NGS QC Toolkit 对测序reads进行简单过滤

fastqc对原始测序reads质控

但是QC的重要性!!!


如果没有充分理解你需要分析的数据,就贸然跑一大堆的软件,选择各种参数,这样意义不大!测序仪综述,了解测序原理。
我会在我的博客里面持续更贴把QC给整理清楚:



fastq定义;
要了解fastq格式:


如何做QC,为什么要QC,Quality trimming? Adapter removal? Contaminant filtering? 
NGS QC Toolkit: 
fastx_toolkit :  
fastqc : 
SolexaQA/HTQC/
需要用到的工具:


fastQC
cutadapt

如果测序质量不合格,则需要:
fastq_quality_filter -v -Q 64 -q 20 -p 75 -i sample.fastq -o sample_filtered.fastq

如果都是reads的前6个bp碱基有问题,则需要
fastx_trimmer -v -f 7 -l 36 -i sample_filtered.fastq -o sample_filtered_and_trimmed.fastq

如果混入了大量的接头,则需要!
cutadapt -m 20 -e 0.1 -a GATCGGAAGAGCACACGTCTGAACTCCAGTCACACA sample2.fastq \ -o sample2--cutadapt.fastq
需要自己去查自己的接头是什么序列:

质控可视化:
(A) Average quality score for each base position, 
(B) GC content distribution, 
(C) Average Phred quality score distribution, 
(D) Base composition and 
(E) read length distribution for both input (red) and HQ filtered (green) data. 
(F) Percentage of reads with different quality score ranges at each base position. 

如果是特殊测序,质控需要加一些步骤
WES:

RNA-seq: RSeQC或者RNA-SeQC,甚至还有质量控制联盟:Sequencing Quality Control Consortium


 ( 值得研究)

ChIP–seq: 

QC可以更复杂:raw data, alignment and variant calling  /
其它平台:PacBio           
MinION nanopore sequencing :   

如果是去除adapter,现在的软件非常多~最经典的就是Cutadapt,利用了 Semi-global sequence alignment can be performed using the Smith-Waterman algorithm [] with minor revisions of the boundary condition as implemented in Cutadapt[],一般我们打断的序列都是大于两倍的测序长度的,不管是pe150,还是PE250,都不会测到接头,但是打断毕竟是随机的,所以一些太小的片段,还是会测到接头的, 所以需要去除,尤其是microRNA,它的长度是20-24bp  ( microRNA-MicroRNA(miRNA)是一类内生的、长度约20-24个核苷酸的小RNA,是发夹结构的约70-90个碱基大小的单链RNA前体经过Dicer酶加工后生成。),测序时候的长度肯定是大于这个长度的  所以肯定会测到3'端的adapter,如果测不到说明这个reads不是microRNA或者是受污染的.
还有很多其它工具
Fastx_clipper in the FastX-Toolkit (), SeqTrim () [7], 
TagCleaner[8],
EA-Tools (). 
SeqPrep () which focuses on paired-end (PE) reads; 
Flexbar[9], a flexible barcode demultiplexer that uses the Needleman-Wunsch algorithm [10] for pair-wise global sequence alignments, which has the same time complexity as that of Smith-Waterman algorithm; 
Trimmomatic (), which is a part of an integrated tool RobiNA[11]; 
Scythe (), which uses a Naive Bayesian approach to classify contaminants in reads; 
TrimGalore (), which internally invokes Cutadapt with an extension to handle PE reads; AdapterRemoval[12], which is carefully tuned for trimming adapters from both single-end (SE) or PE reads; 
AlienTrimmer[13], which is based on k-mer decomposition for contaminant detection; and NextClip[14], which is dedicated to trimming adapters within Nextera LMP reads.


2014年出了一个skewer: 



一.下载该软件

下载解压开

现在已经把它的三个功能整合到一起啦

之前是分开的程序,我主要用它的两个perl 程序,我比较喜欢之前的版本,所以下面的讲解也是基于这两个perl程序。

这两

个主要是对reads进行最大子串的截取

 

二.准备数据。

就是我们测序得到的原始数据。

第一个就是质量控制,一般是以20为标准,当然你也可以自己设定,该软件质控的原理如下:

使用默认的参数值(defaults to P = 0.05, or equivalently, Q = 13)

 

基本上就是取符合阈值的最大子串。

二:命令使用很简单一般使用DynamicTrim与LengthSort.pl就可以了

for id in *fastq

do

echo $id

perl DynamicTrim.pl -454 $id

done

for id in *trimmed

do

echo $id

perl LengthSort.pl $id

done

首先使用DynamicTrim.pl程序,非常耗时间

几个小时完毕之后

查看,产出文件如下

 

可以看到丢弃的不多,也就三五百M的

简单查看丢弃的,都是短的。

perl -lne ‘{print length if $.%4==2}’ SRR1793918.fastq.trimmed.discard |head

用这个脚本查看,可知好像都是短于25个碱基的被舍弃掉了,这个参数可以调整的。

接下来就可以用这些数据进行数据分析了




您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存