聲明:本文部分內容和部分圖片來源于網(wǎng)絡。本文為生信小白學習筆記,不能保證專業(yè)名詞和內容全部正確或權威。
下圖為某一條RNAseq從數(shù)據(jù)預處理,序列回帖到數(shù)據(jù)可視化的工作流程,包含了較多的軟件(Linux環(huán)境運行)和若干個包(R語言環(huán)境運行),本系列將按下圖,對每一個步驟進行學習和理解。
某RNAseq分析方法
承接本RNAseq分析上一部分,F(xiàn)astQC可以得到較詳盡的測序結果質量評估報告,并可以通過分析得到導致測序結果質量較低的原因以利于下一步數(shù)據(jù)清洗和過濾。
Trimmomatic是2014年發(fā)表于Bioinformatics,已經(jīng)引用19074次。主要針對Illumina平臺結果進行分析,其他測序平臺可選擇相應數(shù)據(jù)清洗軟件。
特點:Trimmomatic支持多線程,處理速度很快,主要用來去除 Illumina 平臺的 Fastq 序列中的接頭(adapter),并根據(jù)堿基質量值對 Fastq 進行修剪。軟件有兩種過濾模式,分別對應 SE 和 PE 測序數(shù)據(jù),同時支持 gzip 和 bzip2 壓縮文件。
簡單應用
雙端測序
對于大部分測序數(shù)據(jù),都可以使用較溫和的質量修整和接頭修剪。大部分情況下,不需要前端和末尾修剪(leading and traling clipping)。通常,處理雙端測序文件,*keepBothReads*很有用,這將保留多余的信息,但也會使分析流程更加可供處理。注意,在*keepBothReads*前的2是指在palindrome模式的最小adapter長度,可以被設置為1(默認值為8)。
需要注意的是:Trimmomatic過濾數(shù)據(jù)的命令順序決定其過濾步驟,為了更有效地去除接頭,可在其他過濾命令前,第一步就去除。
java -jar trimmomatic-0.35.jar PE -phred33 input_forward.fq.gz input_reverse.fq.gz output_forward_paired.fq.gz output_forward_unpaired.fq.gz output_reverse_paired.fq.gz output_reverse_unpaired.fq.gz ILLUMINACLIP:TruSeq3-PE.fa:2:30:10 LEADING:3 TRAILING:3 SLIDINGWINDOW:4:15 MINLEN:36
不同命令的功能:
- 移除接頭(ILLUMINACLIP:TruSeq3-PE.fa:2:30:10)
- 移除前端低質量序列或N堿基(低于質量3)(LEADING:3)
- 移除尾端低質量序列或N堿基(低于質量3)(TRAILING:3)
- 使用4堿基寬度的滑窗掃描讀段,當每堿基平均質量低于15時,進行修剪(SLIDINGWINDOW:4:15)
- 去除長度小于36堿基的讀段(MINLEN:36)
單端測序
命令參數(shù):
java -jar trimmomatic-0.35.jar SE -phred33 input.fq.gz output.fq.gz ILLUMINACLIP:TruSeq3-SE:2:30:10 LEADING:3 TRAILING:3 SLIDINGWINDOW:4:15 MINLEN:36
這段命令具體功能見雙端測序。
Trimmomatic介紹
針對Illumina雙端測序和單端測序,Trimmomatic呈現(xiàn)了多種有用的修剪工具。修剪步驟的選擇及其相關的參數(shù)可在命令行上實現(xiàn)。
現(xiàn)有的修剪步驟:
ILLUMINACLIP:從讀段中,修剪接頭和其他Illumina特有的序列。
SLIDINGWINDOW:提供了一個滑窗修剪工具,一旦在該窗口的平均質量低于某個閾值,即刪除該堿基。
LEADING:減去低于質量閾值的讀段首端。
TRAILING:減去低于質量閾值的讀段末端。
CROP:將讀段剪切為特定的長度
HEADCROP:從讀段的首端減去特定長度的堿基。
MINLEN:如果低于一定長度,刪除該讀段。
TOPHRED33:將質量分數(shù)轉換為Phred-33
-
TOPHRED64:將質量分數(shù)轉換為Phred-64
對單端測序,需要指定一個輸入和一個輸出文件,加上相應的處理步驟;對雙端測序文件,需要指定兩個輸入文件和四個輸出文件,其中兩個為‘paired’輸出文件(包含一對均經(jīng)過篩選后留下的讀段)和兩個相應的‘unpaired’輸出文件(包含僅有一個讀段成功經(jīng)過篩選)。
Trimmomatic運行
雙端模式
java -jar <path to trimmomatic.jar> PE [-threads <threads] [-phred33 | -phred64] [-trimlog <logFile>] <input 1> <input 2> <paired output 1> <unpaired output 1> <paired output 2> <unpaired output 2> <step 1> ...
或
java -classpath <path to trimmomatic jar> org.usadellab.trimmomatic.TrimmomaticPE [-threads <threads>] [-phred33 | -phred64] [-trimlog <logFile>] <input 1> <input 2> <paired output 1> <unpaired output 1> <paired output 2> <unpaired output 2> <step 1> ...
單端模式
java -jar <path to trimmomatic jar> SE [-threads <threads>] [-phred33 | -phred64] [-trimlog <logFile>] <input> <output> <step 1> ...
或
java -classpath <path to trimmomatic jar> org.usadellab.trimmomatic.TrimmomaticSE [-threads <threads>] [-phred33 | -phred64] [-trimlog <logFile>] <input> <output> <step 1> ...