NGS 數(shù)據(jù)過(guò)濾之 Trimmomatic 詳細(xì)說(shuō)明

tags: Trimmomatic NGS fastq

NGS 原始數(shù)據(jù)過(guò)濾對(duì)后續(xù)分析至關(guān)重要,去除一些無(wú)用的序列也可以提高后續(xù)分析的準(zhǔn)確率和效率。Trimmomatic 是一個(gè)功能強(qiáng)大的數(shù)據(jù)過(guò)濾軟件。


Trimmomatic 介紹

Trimmomatic 發(fā)表的文章至今已被引用了 2810 次,是一個(gè)廣受歡迎的 Illumina 平臺(tái)數(shù)據(jù)過(guò)濾工具。其他平臺(tái)的數(shù)據(jù)例如 Iron torrent ,PGM 測(cè)序數(shù)據(jù)可以用 fastx_toolkit 、NGSQC toolkit 來(lái)過(guò)濾。

Trimmomatic 支持多線(xiàn)程,處理數(shù)據(jù)速度快,主要用來(lái)去除 Illumina 平臺(tái)的 Fastq 序列中的接頭,并根據(jù)堿基質(zhì)量值對(duì) Fastq 進(jìn)行修剪。軟件有兩種過(guò)濾模式,分別對(duì)應(yīng) SE 和 PE 測(cè)序數(shù)據(jù),同時(shí)支持 gzip 和 bzip2 壓縮文件。

另外也支持 phred-33 和 phred-64 格式互相轉(zhuǎn)化,現(xiàn)在之所以會(huì)出現(xiàn) phred-33 和 phred-64 格式的困惑,都是 Illumina 公司的鍋(damn you, Illumina!),不過(guò)現(xiàn)在絕大部分 Illumina 平臺(tái)的產(chǎn)出數(shù)據(jù)也都轉(zhuǎn)為使用 phred-33 格式了。


Trimmomatic 過(guò)濾步驟

Trimmomatic 過(guò)濾數(shù)據(jù)的步驟與命令行中過(guò)濾參數(shù)的順序有關(guān),通常的過(guò)濾步驟如下:

  1. ILLUMINACLIP: 過(guò)濾 reads 中的 Illumina 測(cè)序接頭和引物序列,并決定是否去除反向互補(bǔ)的 R1/R2 中的 R2。
  2. SLIDINGWINDOW: 從 reads 的 5' 端開(kāi)始,進(jìn)行滑窗質(zhì)量過(guò)濾,切掉堿基質(zhì)量平均值低于閾值的滑窗。
  3. MAXINFO: 一個(gè)自動(dòng)調(diào)整的過(guò)濾選項(xiàng),在保證 reads 長(zhǎng)度的情況下盡量降低測(cè)序錯(cuò)誤率,最大化 reads 的使用價(jià)值。
  4. LEADING: 從 reads 的開(kāi)頭切除質(zhì)量值低于閾值的堿基。
  5. TRAILING: 從 reads 的末尾開(kāi)始切除質(zhì)量值低于閾值的堿基。
  6. CROP: 從 reads 的末尾切掉部分堿基使得 reads 達(dá)到指定長(zhǎng)度。
  7. HEADCROP: 從 reads 的開(kāi)頭切掉指定數(shù)量的堿基。
  8. MINLEN: 如果經(jīng)過(guò)剪切后 reads 的長(zhǎng)度低于閾值則丟棄這條 reads。
  9. AVGQUAL: 如果 reads 的平均堿基質(zhì)量值低于閾值則丟棄這條 reads。
  10. TOPHRED33: 將 reads 的堿基質(zhì)量值體系轉(zhuǎn)為 phred-33。
  11. TOPHRED64: 將 reads 的堿基質(zhì)量值體系轉(zhuǎn)為 phred-64。

Trimmomatic 簡(jiǎn)單用法

由于 Trimmomatic 過(guò)濾數(shù)據(jù)的步驟與命令行中過(guò)濾參數(shù)的順序有關(guān),因此,如果需要去接頭,建議第一步就去接頭,否則接頭序列被其他的過(guò)濾參數(shù)剪切掉部分之后就更難匹配更難去除干凈了。

單末端測(cè)序模式

在 SE 模式下,只有一個(gè)輸入文件和一個(gè)過(guò)濾之后的輸出文件:

java -jar <path to trimmomatic jar> SE [-threads <threads>] [-phred33 | -phred64] [-trimlog
<logFile>] <input> <output> <step 1> <step 2> ...

-trimlog 參數(shù)指定了過(guò)濾日志文件名,日志中包含以下四列內(nèi)容:

  • read ID
  • 過(guò)濾之后剩余序列長(zhǎng)度
  • 過(guò)濾之后的序列起始?jí)A基位置(序列開(kāi)頭處被切掉了多少個(gè)堿基)
  • 過(guò)濾之后的序列末端堿基位置
  • 序列末端處被剪切掉的堿基數(shù)

由于生成的 trimlog 文件中包含了每一條 reads 的處理記錄,因此文件體積巨大(GB 級(jí)別),如果后面不會(huì)用到 trim 日志,建議不要使用這個(gè)參數(shù)。

雙末端測(cè)序模式

在 PE 模式下,有兩個(gè)輸入文件,正向測(cè)序序列和反向測(cè)序序列,但是過(guò)濾之后輸出文件有四個(gè),過(guò)濾之后雙端序列都保留的就是 paired,反之如果其中一端序列過(guò)濾之后被丟棄了另一端序列保留下來(lái)了就是 unpaired 。

PE 模式下的輸入輸出文件
PE 模式下的輸入輸出文件
java -jar <path to trimmomatic.jar> PE [-threads <threads] [-phred33 | -phred64] [-trimlog
<logFile>] >] [-basein <inputBase> | <input 1> <input 2>] [-baseout <outputBase> |
<paired output 1> <unpaired output 1> <paired output 2> <unpaired output 2> <step 1> <step 2> ...

其中 -phred33 和 -phred64 參數(shù)指定 fastq 的質(zhì)量值編碼格式,如果不設(shè)置這個(gè)參數(shù),軟件會(huì)自動(dòng)判斷輸入文件是哪種格式(v0.32 之后的版本都支持),雖然軟件默認(rèn)的參數(shù)是 phred64,如果不確定序列是哪種質(zhì)量編碼格式,可以不設(shè)置這個(gè)參數(shù)。

輸入輸出文件

PE 模式的兩個(gè)輸入文件:sample_R1.fastq sample_R2.fastq以及四個(gè)輸出文件:sample_paired_R1.clean.fastq sample_unpaired_R1.clean.fastq sample_paired_R1.clean.fastq sample_unpaired_R1.clean.fastq

通常 PE 測(cè)序的兩個(gè)文件,R1 和 R2 的文件名是類(lèi)似的,因此可以使用 -basein 參數(shù)指定其中 R1 文件名即可,軟件會(huì)推測(cè)出 R2 的文件名,但是這個(gè)功能實(shí)測(cè)并不好用,因?yàn)檐浖荒茏詣?dòng)識(shí)別推測(cè)三種種格式的 -basein:

  • Sample_Name_R1_001.fq.gz -> Sample_Name_R2_001.fq.gz
  • Sample_Name.f.fastq -> Sample_Name.r.fastq
  • Sample_Name.1.sequence.txt -> Sample_Name.2.sequence.txt

建議不用 -basein 參數(shù),直接指定兩個(gè)文件名(R1 和 R2)作為輸入。

輸出文件有四個(gè),當(dāng)然也可以像上文一樣指定四個(gè)文件名,但是參數(shù)太長(zhǎng)有點(diǎn)麻煩,有個(gè)省心的方法,使用 -baseout 參數(shù)指定輸出文件的 basename,軟件會(huì)自動(dòng)為四個(gè)輸出文件命名。例如 -baseout mySampleFiltered.fq.gz ,文件名中添加 .gz 后綴,軟件會(huì)自動(dòng)將輸出結(jié)果進(jìn)行 gzip 壓縮。輸出的四個(gè)文件分別會(huì)自動(dòng)命名為:

  • mySampleFiltered_1P.fq.gz - for paired forward reads
  • mySampleFiltered_1U.fq.gz - for unpaired forward reads
  • mySampleFiltered_2P.fq.gz - for paired reverse reads
  • mySampleFiltered_2U.fq.gz - for unpaired reverse reads

此外,如果直接指定輸入輸出文件名,文件名后添加 .gz 后綴就是告訴軟件輸入文件是 .gz 壓縮文件,輸出文件需要用 gzip 壓縮。


過(guò)濾原理

每一步的過(guò)濾如果需要多個(gè)參數(shù),通常用冒號(hào):將各個(gè)參數(shù)隔開(kāi),當(dāng)然參數(shù)的先后順序是有要求的。

ILUMINACLIP

從名字可以看出,這一步是為了去除 illumina 接頭的,這個(gè)軟件其實(shí)就是專(zhuān)為 illumina 平臺(tái)數(shù)據(jù)而設(shè)計(jì)的。

為了更好理解測(cè)序 reads 中為什么會(huì)有引物和接頭序列,我畫(huà)了一個(gè)文庫(kù)加上接頭之后的結(jié)構(gòu)示意圖,也把引物結(jié)合部位大概標(biāo)了出來(lái):

接頭和測(cè)序引物結(jié)構(gòu)示意圖
接頭和測(cè)序引物結(jié)構(gòu)示意圖

這個(gè)文庫(kù)結(jié)構(gòu)示意圖理解之后就容易理解測(cè)序過(guò)程了。

去除接頭以及引物序列看似簡(jiǎn)單,但需要權(quán)衡靈敏度(保證接頭和引物去除干凈)和特異性(保證不是接頭和引物的序列不被誤切除),由于測(cè)序中可能存在的隨機(jī)錯(cuò)誤讓去接頭這樣一個(gè)簡(jiǎn)單的操作變的復(fù)雜。

雖然理論上接頭序列和引物序列可能出現(xiàn)在 reads 中的任何位置,但實(shí)際上序列中出現(xiàn)接頭和引物大部分情況下都是由于文庫(kù)插入片段比測(cè)序讀長(zhǎng)短導(dǎo)致的,這種情況在 reads 的開(kāi)頭部分是有一段可用序列的,末端包含了接頭的全長(zhǎng)或部分序列,如果末端只有接頭的一部分序列,那么去除這殘缺的接頭序列也不是容易的事。

然而,在 PE 測(cè)序模式下如果文庫(kù)的插入片段比測(cè)序讀長(zhǎng)短,那么 read1 和 read2 中非接頭序列的那部分會(huì)完全反向互補(bǔ),Trimmomatic 有一個(gè) ‘palindrome’ 模式會(huì)利用這個(gè)特點(diǎn)進(jìn)行接頭序列的去除。

下圖中 A、B、C、D 四種情況就是 Trimmomatic 去除接頭和引物的四種模式:

  • 紅色條形:被切除的序列
  • 綠色條形:保留下來(lái)的有效讀長(zhǎng)
  • 深藍(lán)色條形:接頭序列
  • 淺藍(lán)色條形:引物序列
Trimmomatic 四種模式原理圖解
Trimmomatic 四種模式原理圖解

A 模式:測(cè)序 reads 從起始位置開(kāi)始就包含了完整的接頭序列,那么根據(jù) Illumina 測(cè)序原理,這整條 reads 都不可能包含有用序列了,整條 reads 被丟棄。

B 模式:這種相對(duì)常見(jiàn),由于文庫(kù)插入片段比測(cè)序讀長(zhǎng)短,會(huì)在 reads 末端包含部分接頭序列,若是這部分接頭序列足夠長(zhǎng)是可以識(shí)別并去除的,但如果接頭序列太短,比接頭匹配參數(shù)設(shè)置的最短長(zhǎng)度還短,那么就無(wú)法去除。但是,如果是 PE 測(cè)序,可以按照 D 模式去除 reads 末端的很短的接頭序列。

C 模式:PE 測(cè)序可能出現(xiàn)這種情況,正向測(cè)序和反向測(cè)序有部分完全反向互補(bǔ),但是空載的文庫(kù),兩個(gè)接頭直接互連,這樣的 reads 不包含任何有用序列,正反向測(cè)序 reads 都被丟棄。

D 模式:是 Trimmomatic 利用 PE 測(cè)序進(jìn)行短接頭序列去除的典范,如果文庫(kù)插入片段比測(cè)序讀長(zhǎng)短,利用正反向測(cè)序 reads 中一段堿基可以完全反向互補(bǔ)的特點(diǎn),將兩個(gè)接頭序列與 reads 進(jìn)行比對(duì),同時(shí)兩條 reads 之間也互相比對(duì),可以將 3' 末端哪怕只有 1bp 的接頭序列都可以被準(zhǔn)確去除,相對(duì) B 模式去除接頭污染更徹底。

Trimmomatic 使用了一種類(lèi)似序列比對(duì)軟件(例如 Isaac aligner,一個(gè)超快速的 alignment 軟件)的兩步策略來(lái)搜索潛在的接頭序列。首先,使用接頭序列中的一段種子序列(seed 長(zhǎng)度不超過(guò) 16bp)與測(cè)序 reads 進(jìn)行比對(duì),如果種子序列在測(cè)序 reads 中有足夠好的比對(duì)結(jié)果(具體由 seedMismatch 參數(shù)決定),就啟動(dòng)第二步的接頭全長(zhǎng)與 reads 比對(duì)。第一步的 seed 搜索速度很快,可以過(guò)濾掉沒(méi)有接頭污染的 reads ,這種兩步搜索的方法使得接頭序列的查找效率很高。

在第二步的接頭序列和測(cè)序 reads 全長(zhǎng)比對(duì)統(tǒng)計(jì)比對(duì)分值時(shí),罰分策略考慮了測(cè)序堿基的質(zhì)量值Q,每一個(gè)比對(duì)上的堿基加分 0.6,每一個(gè)錯(cuò)配的堿基減分 Q/10,考慮堿基質(zhì)量值可以降低低質(zhì)量堿基(高測(cè)序錯(cuò)誤率)錯(cuò)配對(duì)整個(gè)比對(duì)得分的影響。在這個(gè)規(guī)則下,一段 12bp 的接頭序列完全比對(duì)到 reads 上得分為 7.2, 25bp 的接頭序列完全比對(duì)到 reads 上得分為 15。因此在 ILLUMINACLIP 參數(shù)中 simple clip threshold 的值建議為 7-15 之間(即上圖中 A/B 比對(duì)模式比對(duì)得分閾值)。

對(duì)于 palindromic 模式的比對(duì)(上圖中 D 模式),可以比對(duì)上的序列長(zhǎng)度會(huì)更長(zhǎng),為了保證識(shí)別接頭序列的準(zhǔn)確率,比對(duì)得分的閾值也更高,例如 reads的 R1 和 R2 中有 50bp 序列可以反向互補(bǔ)匹配,得分為 30。這種模式下,Trimmomatic 可以識(shí)別并去除 reads 中非常短的接頭序列。

ILLUMINACLIP 參數(shù)說(shuō)明:按照規(guī)定順序,ILLUMINACLIP 的參數(shù)列表如下(各個(gè)參數(shù)之間以冒號(hào)分開(kāi)),PE 測(cè)序需要注意最后一個(gè)參數(shù)。對(duì)于 SE 測(cè)序最后兩個(gè)參數(shù)可以不設(shè)置。

ILLUMINACLIP:<fastaWithAdaptersEtc>:<seed mismatches>:<palindrome clip threshold>:<simple clip threshold>:<minAdapterLength>:<keepBothReads>

ILLUMINACLIP:TruSeq3-SE:2:30:10 #接頭和引物序列在 TruSeq3-SE 中,第一步 seed 搜索允許2個(gè)堿基錯(cuò)配,palindrome 比對(duì)分值閾值 30,simple clip 比對(duì)分值閾值 10,palindrome 模式允許切除的最短接頭序列為 8bp(默認(rèn)值),palindrome 模式去除與 R1 完全反向互補(bǔ)的 R2(默認(rèn)去除)

fastaWithAdaptersEtc:指定包含接頭和引物序列(所有被視為污染的序列)的 fasta 文件路徑,Trimmomatic 自帶了一個(gè)包含 Illumina 平臺(tái)接頭和引物序列的 fasta 文件,可以直接用這個(gè)。
seedMismatches:指定第一步 seed 搜索時(shí)允許的錯(cuò)配堿基個(gè)數(shù),例如 2。
palindrome clip threshold:指定針對(duì) PE 的 palindrome clip 模式下,需要 R1 和 R2 之間至少多少比對(duì)分值(上圖中 D 模式),才會(huì)進(jìn)行接頭切除,例如 30。
simple clip threshold:指定切除接頭序列的最低比對(duì)分值(上圖 A/B 模式),通常 7-15 之間。
minAdapterLength:只對(duì) PE 測(cè)序的 palindrome clip 模式有效,指定 palindrome 模式下可以切除的接頭序列最短長(zhǎng)度,由于歷史的原因,默認(rèn)值是 8,但實(shí)際上 palindrome 模式可以切除短至 1bp 的接頭污染,所以可以設(shè)置為 1 。
keepBothReads:只對(duì) PE 測(cè)序的 palindrome clip 模式有效,這個(gè)參數(shù)很重要,在上圖中 D 模式下, R1 和 R2 在去除了接頭序列之后剩余的部分是完全反向互補(bǔ)的,默認(rèn)參數(shù) false,意味著整條去除與 R1 完全反向互補(bǔ)的 R2,當(dāng)做重復(fù)去除掉,但在有些情況下,例如需要用到 paired reads 的 bowtie2 流程,就要將這個(gè)參數(shù)改為 true,否則會(huì)損失一部分 paired reads。

看一個(gè) PE150 數(shù)據(jù)的測(cè)試,就知道 keepBothReads 參數(shù)的重要性了:

$ java -jar trimmomatic-0.36.jar PE -phred33 F-2-test_R1.fastq.gz F-2-test_R2.fastq.gz -baseout F-2.fastq.gz ILLUMINACLIP:TruSeq3-PE.fa:2:30:10 LEADING:3 TRAILING:3 SLIDINGWINDOW:4:15 MINLEN:51

ILLUMINACLIP: Using 1 prefix pairs, 0 forward/reverse sequences, 0 forward only sequences, 0 reverse only sequences
Input Read Pairs: 2500 Both Surviving: 1633 (65.32%) Forward Only Surviving: 828 (33.12%) Reverse Only Surviving: 12 (0.48%) Dropped: 27 (1.08%)
TrimmomaticPE: Completed successfully
# 使用 ILLUMINACLIP 默認(rèn)的第六個(gè)參數(shù) false,只有 65.32% paired reads 保留下來(lái)

$ java -jar trimmomatic-0.36.jar PE -phred33 F-2-test_R1.fastq.gz F-2-test_R2.fastq.gz -baseout F-2.fastq.gz ILLUMINACLIP:TruSeq3-PE.fa:2:30:10:8:true LEADING:3 TRAILING:3 SLIDINGWINDOW:4:15 MINLEN:51

ILLUMINACLIP: Using 1 prefix pairs, 0 forward/reverse sequences, 0 forward only sequences, 0 reverse only sequences
Input Read Pairs: 2500 Both Surviving: 2439 (97.56%) Forward Only Surviving: 22 (0.88%) Reverse Only Surviving: 16 (0.64%) Dropped: 23 (0.92%)
TrimmomaticPE: Completed successfully
# 將 ILLUMINACLIP 第六個(gè)參數(shù)改為 true,其余所有參數(shù)均相同,結(jié)果有 97.56% paired reads 保留下來(lái)

SLIDINGWINDOW

滑窗剪切,統(tǒng)計(jì)滑窗口中所有堿基的平均質(zhì)量值,如果低于設(shè)定的閾值,則切掉窗口。
SLIDINGWINDOW 參數(shù)如下:

SLIDINGWINDOW:<windowSize>:<requiredQuality>

SLIDINGWINDOW:4:15  #設(shè)置 4bp 窗口,堿基平均質(zhì)量值閾值 15

widowSize:設(shè)置窗口大小
requiredQuality:設(shè)置窗口堿基平均質(zhì)量閾值

MAXINFO

包含一個(gè)可以自動(dòng)調(diào)整的過(guò)濾條件,在保留盡可能長(zhǎng)的序列和保持序列中堿基測(cè)序錯(cuò)誤率盡可能低之間進(jìn)行平衡,以達(dá)到 trim 之后保留序列的價(jià)值最大化。

對(duì)于不同的應(yīng)用場(chǎng)景,一條 reads 序列的價(jià)值由以下三個(gè)因素決定:

  1. 允許的最短 read 長(zhǎng)度:只有在測(cè)序 reads 足夠長(zhǎng)的情況下,才能將 reads map 到參考序列的唯一位置上。過(guò)短的序列往往能 map 到參考基因組上的多個(gè)位置(特異性差),這種非特異性的 map 結(jié)果可以給出的有價(jià)值信息很少(對(duì)后續(xù)分析沒(méi)什么用)。保證 reads 可以 map 到參考序列的唯一位置上需要的 reads 最短長(zhǎng)度也與參考序列本身的長(zhǎng)度和序列復(fù)雜度有關(guān),但是通常最短 reads 要求不低于 40bp。
  2. 需求的額外 reads 長(zhǎng)度:在保證 reads 可以 map 到參考序列上的唯一位置的情況下, reads 序列越長(zhǎng),可能對(duì)后續(xù)分析越有利。當(dāng)然,這也需要看應(yīng)用場(chǎng)景,對(duì)于 RNA-seq 來(lái)說(shuō)只需要統(tǒng)計(jì)某個(gè)位置 map 上的 reads 數(shù)目,這種情況下 reads 長(zhǎng)度只要滿(mǎn)足唯一比對(duì)要求即可。而對(duì)于 de-novo 序列組裝或者 Resequencing 檢測(cè)變異,reads 序列長(zhǎng)度越長(zhǎng)越好,reads 越長(zhǎng)可以為后續(xù)分析提供越多的有效證據(jù)。
  3. 對(duì)測(cè)序錯(cuò)誤的敏感性:即測(cè)序錯(cuò)誤率對(duì)后續(xù)分析工作是否造成嚴(yán)重影響,有的應(yīng)用中對(duì) reads 測(cè)序錯(cuò)誤零容忍,就需要非常嚴(yán)格的過(guò)濾條件,而有的應(yīng)用對(duì)測(cè)序錯(cuò)誤不敏感,就可以使用寬松的過(guò)濾條件。

MAXINFO 有兩個(gè)參數(shù),第一個(gè) target read length 控制上面的因素一,即允許的最短 read 長(zhǎng)度。第二個(gè)參數(shù) strictness 是控制因素二和因素三之間的平衡,即滿(mǎn)足最短 read 長(zhǎng)度的情況下,是保留盡可能多的堿基,還是保證盡可能低的測(cè)序錯(cuò)誤率。

MAXINFO 過(guò)濾從 reads 3' 端開(kāi)始進(jìn)行剪切,在考慮上述三個(gè)因素的情況下統(tǒng)計(jì)所有可能的 trim 方式的到的 clean reads 的 INFO 分值(即所謂的 reads 價(jià)值),這三個(gè)因素分別以不同的方式影響最終的 reads INFO 分值:

  1. 最短 read 長(zhǎng)度:最終保留的 reads 長(zhǎng)度與 INFO 分值之間是 logistic 函數(shù)關(guān)系,即 INFO 分值與 reads 長(zhǎng)度之間是 S 形增長(zhǎng)曲線(xiàn)(類(lèi)似大腸桿菌生長(zhǎng)曲線(xiàn)),大概相當(dāng)于,當(dāng)保留下來(lái)的 reads 長(zhǎng)度小于最短長(zhǎng)度時(shí),INFO 分值隨著 reads 長(zhǎng)度增加呈指數(shù)級(jí)增長(zhǎng),當(dāng)保留下來(lái)的 reads 長(zhǎng)度達(dá)到最短 read 長(zhǎng)度要求之后,INFO 分值的增長(zhǎng)會(huì)變緩。
  2. 超出最短 read 長(zhǎng)度的部分:INFO 分值會(huì)隨著額外的 reads 長(zhǎng)度增加了線(xiàn)性增長(zhǎng),線(xiàn)性系數(shù)與 MAXINFO 的第二個(gè)參數(shù)有關(guān),為 1 - strictness。
  3. 測(cè)序錯(cuò)誤敏感性:最終保留下來(lái)的所有堿基的質(zhì)量值都被用來(lái)計(jì)算 reads 包含測(cè)序錯(cuò)誤的概率,出現(xiàn)測(cè)序錯(cuò)誤的概率提升會(huì)降低 INFO 分值,錯(cuò)誤概率對(duì) INFO 分值的影響權(quán)重與 strictness 相關(guān)。

針對(duì)一條 read 的任何可能的剪切方式都計(jì)算出 INFO 分值,最終的 reads 長(zhǎng)度和切除的堿基由 INFO 最大值決定。實(shí)際上這三個(gè)影響因子作用的方式不同:

  1. 當(dāng) reads 長(zhǎng)度比最短 read 長(zhǎng)度還短時(shí) INFO 分值被序列長(zhǎng)度主導(dǎo),因?yàn)樘痰?reads 根本無(wú)法提供足夠的有用信息。
  2. 當(dāng) reads 長(zhǎng)度滿(mǎn)足最短 read 長(zhǎng)度要求時(shí),reads 的長(zhǎng)度因素就不再是影響 INFO 分值的主導(dǎo)因素了,而且一旦 reads 長(zhǎng)度足夠長(zhǎng)時(shí),由于 logistic 函數(shù)的關(guān)系,reads 長(zhǎng)度就不怎么貢獻(xiàn) INFO 分值了。
  3. 超出最短 read 長(zhǎng)度要求的堿基對(duì) INFO 貢獻(xiàn)有限,而另一方面,由于堿基的增加導(dǎo)致 reads 中出現(xiàn)測(cè)序錯(cuò)誤的概率增大,這會(huì)導(dǎo)致對(duì) INFO 的罰分??刂七@超出最短 read 長(zhǎng)度的序列對(duì) INFO 分值的影響到底是罰分還是得分,就看 strictness 參數(shù)了。
  4. 對(duì)于大部分足夠長(zhǎng)的 reads,保留超出最低要求的堿基序列是利還是弊,會(huì)依照堿基質(zhì)量值分布和 strictness 參數(shù)來(lái)決定如何 trim。

參數(shù)說(shuō)明:

MAXINFO:<targetLength>:<strictness>

targetLength:使得 reads 可以 map 到參考序列上唯一位置的最短長(zhǎng)度(likely)。
strictness:一個(gè)介于 0 - 1 之間的小數(shù),決定如何平衡 最大化 reads 長(zhǎng)度 或者 最小化 reads 出現(xiàn)錯(cuò)誤的概率,當(dāng)參數(shù)設(shè)置小于 0.2 時(shí)傾向于最大化 reads 長(zhǎng)度,當(dāng)參數(shù)設(shè)置大于 0.8 時(shí)傾向于最小化 reads 中出現(xiàn)測(cè)序錯(cuò)誤的概率。

LEADING

從 reads 的起始端開(kāi)始切除質(zhì)量值低于設(shè)定的閾值的堿基,直到有一個(gè)堿基其質(zhì)量值達(dá)到閾值。

LEADING:<quality>

quality:設(shè)定堿基質(zhì)量值閾值,低于這個(gè)閾值將被切除。

TRAILING

從 reads 的末端開(kāi)始切除質(zhì)量值低于設(shè)定閾值的堿基,直到有一個(gè)堿基質(zhì)量值達(dá)到閾值。Illumina 平臺(tái)有些低質(zhì)量的堿基質(zhì)量值被標(biāo)記為 2 ,所以設(shè)置為 3 可以過(guò)濾掉這部分低質(zhì)量堿基。官方推薦使用 Sliding WindowMaxInfo 來(lái)代替 LEADINGTAILING。

TRAILING:<quality>

quality:設(shè)定堿基質(zhì)量值閾值,低于這個(gè)閾值將被切除。

CROP

不管堿基質(zhì)量,從 reads 的起始開(kāi)始保留設(shè)定長(zhǎng)度的堿基,其余全部切除。一刀切,把所有 reads 切成相同的長(zhǎng)度。

CROP:<length>

length:reads 從末端除之后保留下來(lái)的序列長(zhǎng)度

HEADCROP

不管堿基質(zhì)量,從 reads 的起始開(kāi)始直接切除部分堿基。

HEADCROP:<length>

length:從 reads 的起始開(kāi)始切除的堿基數(shù)

MINLEN

設(shè)定一個(gè)最短 read 長(zhǎng)度,當(dāng) reads 經(jīng)過(guò)前面的過(guò)濾之后,如果保留下來(lái)的長(zhǎng)度低于這個(gè)閾值,整條 reads 被丟棄。被丟棄的 reads 數(shù)會(huì)被統(tǒng)計(jì)在 Trimmomatic 日志的 dropped reads 中。

MINLEN:<length>

length:可被保留的最短 read 長(zhǎng)度

TOPHRED33

此選項(xiàng)可以將過(guò)濾之后的 Fastq 文件中質(zhì)量值這一行轉(zhuǎn)為 phred-33 格式。

TOPHRED64

此選項(xiàng)可以將過(guò)濾之后的 Fastq 文件中質(zhì)量值這一行轉(zhuǎn)為 phred-64 格式。


接頭序列和引物序列

Trimmomatic 也可以自己制作包含接頭和引物序列的 fasta 文件,格式可以參考軟件自帶的 adapters 文件夾中的格式。

adapters 文件夾中包含 illumina 測(cè)序 TruSeq2,TruSeq3 針對(duì) SE 和 PE 的通用接頭和引物序列。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容