Trimmomatic

前述

Trimmomatic工具是用于illumina二代测序数据的reads处理,主要对接头(adapter)序列和低质量序列进行过滤。下面是使用该工具处理双端测序(PE)数据时,常用参数的一些说明。

参考文档

Trimmomatic工具的参考文献
Trimmomatic工具官网
Trimmomatic工具使用手册

软件使用

执行命令

## 双端测序数据使用方法
# 使用v0.32版本:
1.  java -jar trimmomatic-0.32.jar PE \
2.		[-threads <threads>] \
3.		[-phred33|-phred64] \
4.		[-trimlog <trimLogFile>] \
5.		[<inputFile1> <inputFile2>] \
6.		[<outputFile1P> <outputFile1U> <outputFile2P> <outputFile2U>] \
7.		[ILLUMINACLIP:<fastaWithAdaptersEtc>:<seed mismatches>:<palindrome clip threshold>:<simple clip threshold>:<minAdapterLength>:<keepBothReads>] \
8.		[SLIDINGWINDOW:<windowSize>:<requiredQuality>] \
9.		[LEADING:<quality>] \
10.		[TRAILING:<quality>] \
11.		[MINLEN:<length>]

# 举例:
1. java -jar trimmomatic-0.32.jar PE \
2.		-threads 16 \
3.		-phred33 \
4.		-trimlog trim.log \
5.		input_forward_R1.fq.gz input_reverse_R2.fq.gz \
6.		output_forward_paired_R1.fq.gz  output_forward_unpaired_R1.fq.gz output_reverse_paired_R2.fq.gz output_reverse_unpaired_R2.fq.gz \
7.		ILLUMINACLIP:TruSeq3-PE.fa:2:30:10:8:true \
8.		SLIDINGWINDOW:5:20 \
9.		LEADING:3 \
10.		TRAILING:3 \
11.		MINLEN:36

参数说明

PE 设置使用trimmomatic处理双端数据,单端数据用(‘SE’)
-threads 16 设置线程数为16
-phred33 设置碱基的质量格式(默认-phred64,自v0.32版本之后可自动识别是phred33还是phred64)
-trimlog trim.log 设置trimmommatic工具处理的日志文件为’trim.log’,每两行为一对reads信息

生成的日志文件’trim.log’包含5列信息:

  1) read名称
  2) 切除后剩余的read长度
  3) 切除后第一个碱基所在位置(0-base),也就是起始位置切除了几个碱基
  4) 切除后最后一个碱基所在位置
  5) read末尾切除了几个碱基
  # 由于该生成文件较大,如后续步骤不需该文件信息,可考虑不设置

input_forward_R1.fq.gz 输入的forward正向链R1对应的fastq文件
input_reverse_R2.fq.gz 输入的reverse反向链R2对应的fastq文件
output_forward_paired_R1.fq.gz 处理后输出的R1对应reads成对fastq文件
output_forward_unpaired_R1.fq.gz 处理后输出的R1对应reads不成对的fastq文件
output_reverse_paired_R2.fq.gz 处理后输出的R2对应reads成对fastq文件
output_reverse_unpaired_R2.fq.gz 处理后输出的R2对应reads不成对的fastq文件
ILLUMINACLIP:TruSeq3-PE.fa:2:30:10:8:true 切除illumina接头参数设置。

说明ILLUMINACLIP的各参数之前,先解释一下要使用的两种切除接头的模式和比对分值计算方法

  1. Simple mode

simple模式,它可用于切除任何序列(any technical sequence, 暂且称之为污染序列)。该模式的方法是将污染序列直接与一条read进行比对(局部比对),将进行下面4个步骤(情形):
在这里插入图片描述

 Simple mode是根据与污染序列的比对情况判断切除序列
 A) 污染序列3'端的一部分与read5'端有overlap,去除整条read;
 B) 污染序列从read的5'端开始能与read完全overlap, 去除整条read;
 C) 污染序列在read中间有overlap,5'端一部分没有overlap的保留,overlap的部分及之后的进行切除;
 D) 污染序列3'端的一部分与read有overlap,切除overlap部分.
  1. Palindrome mode
    palindrome模式,它仅用于read测穿(read-through)的情形, 该模式的方法是:在识别接头序列之前,先将接头序列加在成对reads起始(‘adapter ligated’ read,read-with-adapter, 暂且称加adapter后的这对reads为a-R1和a-R2),再将a-R1和a-R2进行比对(全局比对)。 该模式将进行如下4个步骤(情形):
    Palindrome mode
    在这里插入图片描述
 Palindrome mode: 是根据a-R1, a-R2的overlap判断切除的序列
 A) overlap是在接头序列与reads的起始之间,即overlap只有接头序列,没有有用的信息,这种情形将这两条read都整条去除;
 B) overlap有一部分是DNA插入片段,一部分是整个接头序列,该情形会将这对reads从overlap序列及剩余序列(3'端)切除;
 C) overlap中有接头序列的一小部分,与B)相同方式切除;
 D) overlap中不存在接头序列.

再说明一下比对分值的计算方法:

match:匹配一个碱基加分,分值为$log_10{4}$(约等于0.602);
 mismatch: 错配一个碱基减分,分值为Q/10,
 	   其中,Q为对应碱基的碱基质量值,由于一般碱基质量值区间为: [0-40],即错配的罚分值区间[0-4]。
 	   该分值公式说明碱基质量越高的碱基出现错配时罚分越多.
 ## 例如:
 # 12bp的接头序列能够完全比对到read上的分值为:12 * 0.602 ≈ 7;
 # 25bp的接头序列完全比对到read上的分值为:25 * 0.602 ≈ 15;
 # a-R1和a-R2有50bp完全匹配的分值为50 * 0.602 ≈ 30.

下面是ILLUMINACLIP的各参数说明:

 ":<fastaWithAdaptersEtc>:<seed mismatches>:<palindrome clip threshold>:<simple clip threshold>:<minAdapterLength>:<keepBothReads>"
 - ":TruSeq3-PE.fa"  # <fastaWithAdaptersEtc>是fasta格式的接头序列文件路径
 - ":2"  # <seed mismatches>是将接头序列的一段(不超过16bp)作为seed,与reads进行比对,能够容忍的最大错配(mismatch)数,这里是最多2个错配
 - ":30"  # <palindrome clip threshold>是 a-R1, a-R2的比对分值阈值,达到阈值,才进行切除,这里设置阈值为30(大约比对50bp碱基)
 - ":10"  # <simple clip threshold>是任意(接头)序列与read比对最低分阈值,大于这个阈值,才进行切除,这里设置阈值为10(大约比对17bp碱基)
 - ":8"  # <minAdapterLength>只作用于Palindrome模式,是设置检测到接头序列的最小长度(默认为8,甚至可设置为1)
 - ":true"  # <keepBothReads>只作用于palindrome模式,是设置是否保留反向链,这里是说去除接头序列后,由于正反链包含相同的序列信息(尽管序列是反向互补的),默认情况(":false")下会去除反向链,设置为":True"则保留反向链

SLIDINGWINDOW:5:20 设置滑动窗口阈值,以为5bp为窗口,这5bp碱基的平均质量值低于20,要进行切除
LEADING:3 设置从reads起始开始,去除质量低于阈值或为’N’的碱基,直到达到阈值不再去除,这里设置阈值为3。
TRAILING:3 设置从reads末尾开始,去除质量低于阈值的碱基或为’N’的碱基直到达到阈值不再去除,这里设置阈值为3,这种方法是去除特定的illumina平台低质量区域(由于illumina会将低质量碱基标记为2),官方操作文档中建议使用 SLIDINGWINDOW 或 MAXINFO代替[这里未给出MAXINFO参数说明] )。
MINLEN:36 设置read切除后的最短长度,这里设置长度至少为36bp,长度小于36bp的reads被去除。

除了这些参数外,如果我们想要切除reads开头的碱基,可以使用HEADCROP 参数。

HEADCROP:9表示切除reads开头9个碱基。

如果想切除reads末端的序列,仅保留前一部分,可以使用CROP 参数。
假设reads长度为150,CROP:130代表切除reads后20个碱基,仅保留前130个碱基。

  • 4
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Trimmomatic是一个用于处理高通量测序数据的工具,可以用来去除低质量序列、去除接头序列等。其常用的参数包括:ILLUMINACLIP、LEADING、TRAILING、SLIDINGWINDOW、MINLEN等。具体使用方法可以参考Trimmomatic的官方文档。 ### 回答2: Trimmomatic是一个用于去除高通量测序数据中低质量序列和适配体序列的工具。该工具的参数包括输入文件、输出文件、处理模式以及一系列具体的功能选项。 输入文件参数是必须指定的,用于指定需要进行处理的原始序列文件。可以是单个序列文件或者多个序列文件。输出文件参数则是指定处理后的序列输出文件,可以是单个文件或者多个文件。 处理模式参数是用于指定处理模式的选项,常用的有单端序列处理模式和双端序列处理模式。在单端序列处理模式下,工具会对每个序列文件进行独立处理。而在双端序列处理模式下,工具会首先将双端序列文件对应的序列进行配对,然后再进行处理。 在具体功能选项中,可以设置的参数有: 1. 过滤低质量序列:可以通过指定阈值来过滤掉低质量的序列,默认阈值为20(Phred质量分值)。 2. 去除接头序列:通过输入接头序列文件,可以将测序过程中引入的接头序列从原始序列数据中剔除。 3. 剪切序列:可以指定起始位置和长度,将序列数据进行剪切。 4. 窗口剪切:可以通过指定窗口大小和平均质量分值,针对序列的局部区域进行质量剪切。 5. 最小序列长度:可以指定一个最小序列长度,将短于该长度的序列删除。 6. 同向配对模式:用于双端序列处理模式下,只保留同方向的配对序列,而删除不同方向的配对序列。 以上是Trimmomatic的基本参数,通过调整这些参数可以根据实际需求对序列进行处理和过滤,以提高下游分析的准确性和可靠性。 ### 回答3: Trimmomatic是一个常用的序列数据预处理工具,用于修剪测序数据中的低质量碱基、去除接头序列和过滤掉短序列。它有多个参数可供调整,以下是几个常用的参数及其解释: 1. ILLUMINACLIP:该参数用于指定适配器序列的FASTA文件,并提供接头序列的详细信息,包括序列、位置和适配器错误率。该参数的作用是去除测序数据中的接头序列,以免对后续分析产生干扰。 2. SLIDINGWINDOW:这是一个重要的参数,它用于指定移动窗口的大小和平均质量阈值。Trimmomatic会根据窗口内的平均质量值进行修剪。当窗口内的平均质量低于阈值时,该窗口及其之后的所有碱基将被修剪掉。 3. LEADING和TRAILING:这两个参数用于去除序列开头和结尾的低质量碱基。LEADING参数指定开头连续低质量碱基的最小数量,而TRAILING参数指定结尾连续低质量碱基的最小数量。如果开头或结尾的低质量碱基数量超过了指定的阈值,就会进行修剪。 4. MINLEN:这个参数用于过滤掉长度小于指定值的序列。一般来说,我们希望去除过短的序列,因为它们可能是噪音或者低质量序列,对后续分析产生干扰。 总的来说,Trimmomatic的参数可以根据实际需要进行调节。合理选择参数能够有效地去除噪音和低质量序列,提高后续分析的可靠性和准确性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值