NGS 原始数据过滤对后续分析至关重要,去除一些无用的序列也可以提高后续分析的准确率和效率。Trimmomatic 是一个功能强大的数据过滤软件。详细说明
Trimmomatic 支持多线程,处理数据速度快,主要用来去除 Illumina 平台的 Fastq 序列中的接头,并根据碱基质量值对 Fastq 进行修剪。软件有两种过滤模式,分别对应 SE(单端) 和 PE (双端)测序数据,同时支持 gzip 和 bzip2 压缩文件。
由于 Trimmomatic 过滤数据的步骤与命令行中过滤参数的顺序有关,因此,如果需要去接头,建议第一步就去接头,否则接头序列被其他的过滤参数剪切掉部分之后就更难匹配更难去除干净了。
双末端测序模式(PE)
在 PE 模式下,有两个输入文件,正向测序序列和反向测序序列,但是过滤之后输出文件有四个,过滤之后双端序列都保留的就是 paired,反之如果其中一端序列过滤之后被丢弃了另一端序列保留下来了就是 unpaired 。
代码:
image.png
#!/bin/bash
module add java
module add Trimmomatic
JAVAOPT="-Xms4g -Xmx64g"
TRIM_ADAPTERS=${TRIM_ROOT}/adapters
trim="java ${JAVAOPT} -jar ${TRIM_ROOT}/Trimmomatic.jar"
$trim PE -threads 1 \
/home/simone1/linjc/da22/s37T/P37T_NDHE08194-A95-A49_AHC25FDSXX-new_L2_1.fq.gz \
/home/simone1/linjc/da22/s37T/P37T_NDHE08194-A95-A49_AHC25FDSXX-new_L2_2.fq.gz \
/home/simone1/linjc/da22/s37_trim/P37T_1_1p.fq \
/home/simone1/linjc/da22/s37_trim/P37T_1_1u.fq \
/home/simone1/linjc/da22/s37_trim/P37T_1_2p.fq \
/home/simone1/linjc/da22/s37_trim/P37T_1_2u.fq \
ILLUMINACLIP:${TRIM_ADAPTERS}/TruSeq3-PE.fa:2:30:10 LEADING:3 TRAILING:3 SLIDINGWINDOW:4:15 MINLEN:36
PE 模式的两个输入文件:sample_R1.fastq sample_R2.fastq以及四个输出文件:sample_paired_R1.clean.fastq sample_unpaired_R1.clean.fastq sample_paired_R1.clean.fastq sample_unpaired_R1.clean.fastq
下一步,压缩trim后生成的文件
image.png
image.png
有个省心的方法,使用 -baseout 参数指定输出文件的 basename,软件会自动为四个输出文件命名。例如 -baseout mySampleFiltered.fq.gz ,文件名中添加 .gz 后缀,软件会自动将输出结果进行 gzip 压缩。输出的四个文件分别会自动命名为:
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
后续分析使用paired
网友评论