生信軟件工具-Trimmomatic


Trimmomatic


注意:軟件工具一般會定期進行迭代更新,如果使用出現問題,請查看官方文檔。

可以用來切除illumina測序平台的接頭序列,還可以去除由我們自己指定的特定接頭序列,而且同時也能夠過濾read末尾的低質量序列。具體的原理就是通過滑動一定長度的窗口,計算窗口內的鹼基平均質量,如果過低,就直接往后全部切除,不是挖掉read中的這部分低質量序列,而是像切菜一樣,直接從低質量區域開始把這條read后面的所有其它鹼基全部剁掉,否則就是在人為改變實際的基因組序列情況。

  1. adapters文件夾

    • 默認存放的是illumina測序平台的接頭序列(fasta格式),在實際的使用過程中,如果需要去除接頭,我們需要明確指定對應的序列作為輸入參數。一般來說,目前的HiSeq系列和MiSeq系列用的都是TruSeq3,TruSeq2是以前GA2系列的測序儀所用的,已經很少見了。如果用的不是illumina測序平台,那么我們也可以按照adapters文件夾下的這些文件的格式做一個新的接頭序列,然后再作為參數傳入。不過在自定義接頭序列的時候,命名時有一些小的細節需要注意,可以參考Trimmomatic的主頁文檔(The Adapter Fasta)
  2. 使用方法

PE和SE兩種方式,詳見說明文檔

java -jar trimmomatic-0.36.jar
Usage:
PE [-version] [-threads <threads>] [-phred33|-phred64] [-trimlog <trimLogFile>] [-quiet] [-validatePairs] [-basein <inputBase> | <inputFile1> <inputFile2>] [-baseout <outputBase> | <outputFile1P> <outputFile1U> <outputFile2P> <outputFile2U>] <trimmer1>...
SE [-version] [-threads <threads>] [-phred33|-phred64] [-trimlog <trimLogFile>] [-quiet] <inputFile> <outputFile> <trimmer1>...
-version

# 例:paired-end
java -jar /path/Trimmomatic/trimmomatic-0.36.jar PE -phred33 \
reads_1.fq.gz reads_2.fq.gz \
out.read_1.fq.gz out.trim.read_1.fq.gz \
out.read_2.fq.gz out.trim.read_2.fq.gz \
ILLUMINACLIP:/path/Trimmomatic/adapters/TruSeq3-PE.fa:2:30:10 \
SLIDINGWINDOW:5:20 \
LEADING:5 \
TRAILING:5 \
MINLEN:50
##  在SE模式中,是不需要指定文件來存放被過濾掉的read信息的,后面直接就接Trimmer信息!這是需要注意到的一個地方
  1. 參數說明:
    PE/SE 設定對Paired-End或Single-End的reads進行處理,其輸入和輸出參數稍有不一樣。
    -threads 設置多線程運行數
    -phred33 設置鹼基的質量格式,默認是pred64
    ILLUMINACLIP:TruSeq3-PE.fa:2:30:10 TruSeq3-PE.fa是接頭序列,2是比對時接頭序列時所允許的最大錯配數;30指的是要求PE的兩條read同時和PE的adapter序列比對,匹配度加起來超30%,那么就認為這對PE的read含有adapter,並在對應的位置需要進行切除。10和前面的30不同,它指的是,我就什么也不管,反正只要這條read的某部分和adpater序列有超過10%的匹配率,那么就代表含有adapter了,需要進行去除數:palindrome模式下匹配鹼基數閾值:simple模式下的匹配鹼基數閾值。
    LEADING:3 切除首端鹼基質量小於3的鹼基
    TRAILING:3 切除尾端鹼基質量小於3的鹼基
    SLIDINGWINDOW:4:15 從5'端開始進行滑動,當滑動位點周圍一段序列(window)的平均鹼基低於閾值,則從該處進行切除。Windows的size是4個鹼基,其平均鹼基質量小於15,則切除。
    MINLEN:50 規定read被切除后至少需要保留的長度,如果低於該長度,會被丟掉
    CROP:<length> 保留reads到指定的長度
    HEADCROP:<length> 在reads的首端切除指定的長度
    TOPHRED33 將鹼基質量轉換為pred33格式
    TOPHRED64 將鹼基質量轉換為pred64格式

如果下機的fq數據中不含有這些測序接頭,那么我們除了trimmomatic之外,也可以直接使用sickle(同時支持PE和SE數據)或者seqtk(僅支持SE),這兩個處理起來會更快,消耗的計算資源也更少。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM