4. 测序读段质量控制与过滤工程
原始 FASTQ 文件里的读段并不等于可以直接用于比对的“干净数据”。一次典型的 Illumina 双端测序产出中,读段末端质量会随循环数下降,接头(adapter)会因插入片段短于读长而读入,低复杂度或 rRNA 来源的污染序列也会混入。读段质量控制与过滤工程的目标,就是把这些系统性缺陷在比对之前处理掉,同时尽量不损失真实生物学信号。本章围绕“修剪—过滤—去接头—去污染”这条主线,比较 Trimmomatic、cutadapt、fastp 三类主流工具的策略与参数,并给出可复现的标准流程。
一、读段质量问题的来源与判读
FASTQ 每条记录由四行组成:以 @ 开头的标识行、碱基序列行、以 + 开头的分隔行、以及用 ASCII 字符编码的 Phred 质量行。Phred 质量 Q 与错误率 P 的关系为 Q = −10·log₁₀P,即 Q20 对应 1% 错误率,Q30 对应 0.1%。判断数据是否需要修剪,通常先看三类信号:
- 质量沿读段位置的分布:若 3′ 端质量在某个循环后系统性跌破 Q20,说明该区段应修剪。
- 接头含量:短插入片段会让读段尾部出现已知接头序列,如 Illumina TruSeq 的
AGATCGGAAGAGC。 - 碱基组成偏移:接头或污染会造成特定位置碱基比例异常,例如 G 含量突增。
FastQC 或 fastp 自带的 HTML 报告可给出上述曲线。需要强调的是,质量过滤不是“越狠越好”:过度修剪会缩短读段、降低可比对率,甚至引入比对偏好。因此参数设定应基于报告中的实际拐点,而非套用固定阈值。
二、去接头:先识别,再切除
接头去除的核心是“匹配—切除”。以 cutadapt 为例,单端数据可用 -a 指定 3′ 接头,双端数据分别用 -a 和 -A。匹配允许一定错配率,默认约 10%,可通过 -e 调整。对于插入片段短于读长的情况,接头会出现在读段内部,此时应使用 --times 允许多次切除,或对双端数据启用 --pair-filter=any 保证成对一致性。
cutadapt -j 8 \
-a AGATCGGAAGAGCACACGTCTGAACTCCAGTCA \
-A AGATCGGAAGAGCGTCGTGTAGGGAAAGAGTGT \
-q 20 -m 36 -e 0.1 \
-o clean_R1.fq.gz -p clean_R2.fq.gz \
raw_R1.fq.gz raw_R2.fq.gz
fastp 则更进一步,可用 --detect_adapter_for_pe 自动检测双端接头,无需手工提供序列,适合接头未知或多样本混合的场景。但自动检测依赖足够多的短插入片段,若文库插入片段普遍偏长,检测灵敏度会下降,此时仍建议显式指定接头序列。
三、质量修剪:滑窗与逐碱基两种策略
Trimmomatic 的 SLIDINGWINDOW:4:20 表示以 4 bp 为窗口沿读段滑动,当窗口平均质量低于 Q20 时,从窗口起点切除其后所有碱基。这种策略对 3′ 端质量骤降非常有效,但窗口大小和阈值需要根据报告调整:窗口过小会因局部波动误切,过大则定位不精确。另一种策略是 LEADING 与 TRAILING,分别从 5′ 和 3′ 端逐碱基切除低于阈值的碱基,适合处理两端零星的低质量碱基。
fastp 默认启用滑窗修剪,窗口为 4、阈值为 Q15,可通过 -q 与 --cut_window_size 调整。其优势在于把质量过滤、长度过滤、接头去除和 polyG/polyX 修剪整合在一次遍历中,减少 I/O 开销。对于 NovaSeq 等平台常见的 polyG 伪影,fastp 的 --trim_poly_g 可自动识别并切除读段末端的连续 G。
四、过滤与去污染:把不合格读段挡在门外
修剪之后仍需过滤。常用判据包括:读段长度低于阈值(如 36 bp)、N 碱基比例过高(如 > 5%)、平均质量过低、以及低复杂度序列。Trimmomatic 用 MINLEN 控制最短长度,cutadapt 用 -m,fastp 用 -l。对于污染,若样本中混有 PhiX 对照或 rRNA,可用 bowtie2 或 bwa 将读段比对到污染参考,再剔除比对上的读段;也可用 sortmeRNA 专门去除 rRNA。去污染应在去接头和质量修剪之后进行,避免接头序列干扰比对判断。
-q、-l 和接头参数。不要直接套用他人流程中的固定值。
五、标准流程与结果判读
一个可复现的标准流程如下:
- 用 FastQC 或 fastp 对原始数据做质控,记录 Q30 比例、接头含量、读长分布。
- 去接头:优先用 fastp 自动检测,或 cutadapt 显式指定接头。
- 质量修剪:滑窗阈值 Q20,窗口 4;必要时补充 LEADING/TRAILING。
- 长度与 N 过滤:最短读长 36 bp,N 比例上限 5%。
- 去污染:比对到 PhiX/rRNA 参考,剔除命中读段。
- 再次质控,确认 Q30 比例提升、接头残留低于 1%、读长分布合理。
结果判读时,重点看三个指标的变化:过滤后 Q30 比例应显著上升;接头残留应降至 1% 以下;可比对率不应因过度修剪而明显下降。若过滤后读段数骤减超过 30%,需回查阈值是否过严。最终产出的 clean FASTQ 应保留原始读段标识,便于后续比对和定量时追溯。
综上,读段质量控制与过滤工程的关键不在于记住某个工具的固定命令,而在于理解“接头—质量—长度—污染”四类问题的成因与判据,并根据质控报告动态调整参数。Trimmomatic 适合已有成熟流程的批量处理,cutadapt 在接头匹配上更精细,fastp 则以一体化和速度见长。三者可单独使用,也可组合成“fastp 初筛 + cutadapt 精修 + 去污染”的流水线,具体取决于数据特征与分析需求。