高通量测序数据质控基础:测序原理、质量值(Phred score)、Q30 等指标

做多组学平台质控,你绕不开的第一个硬核知识点就是测序数据的质量评估。说白了,你拿到手的 FASTQ 文件到底能不能用,全靠这些指标把关。我自己最早接触这个领域时,以为只要 Q30 比例高就是好数据,结果被现实狠狠教育了一回——后面我会讲那个坑。

这一章我们不讲复杂的数学推导,只把测序怎么产生、质量值怎么算、Q30 到底代表什么,这些最基础但又最容易忽略的东西讲透。

测序原理:从荧光信号到碱基序列

主流的高通量测序(NGS)基于边合成边测序(SBS)原理。以 Illumina 平台为例,流程大致是:

  1. 文库制备:DNA 片段两端加上接头,桥式 PCR 扩增形成簇。
  2. 测序循环:加入荧光标记的 dNTP,每次只延伸一个碱基,激发荧光并拍照。
  3. Base Calling:分析每个簇的荧光信号强度,判断该位置是什么碱基,同时给出一个质量分数。

嗯,这里要注意:质量分数就是 Phred score,它直接反映了这个碱基判断的可靠度。

踩坑提醒:我曾经遇到一批 RNA-seq 数据,Q30 比例都在 92% 以上,但比对率只有 60%。后来发现是文库制备时接头连接效率低,导致大量短片段和接头序列掺入。所以只看 Q30 是不够的,必须结合 GC 含量、重复序列、接头污染等指标一起看。

质量值 Phred score:到底在算啥?

Phred score 最早用在 Sanger 测序的碱基识别中,后来被 NGS 继承。它的定义是:

Q = -10 × log10(P)
其中 P 是该碱基测序错误的概率

举个例子:

Phred score (Q) 错误概率 碱基正确率
Q10 1/10 = 10% 90%
Q20 1/100 = 1% 99%
Q30 1/1000 = 0.1% 99.9%
Q40 1/10000 = 0.01% 99.99%

表格里的数字很直观:Q30 意味着每 1000 个碱基里可能错 1 个。听着挺高,但放在人类基因组 30× 测序深度下,错误碱基数就非常可观了。

我个人习惯在面对一个新测序平台时,先看它原始数据里哪一段的 Q 值下降最快。Illumina 的读长越长,末端质量越低,这是物理规律。但有些平台会在中间段突然掉质量,那就要警惕了。

Q30 指标:行业默认的“及格线”

Q30 比例(Reads 中碱基 Q≥30 的数量占总碱基数的百分比)已经成为测序质控里最常用的指标。为什么是 30 而不是 20?因为 99.9% 的正确率在变异检测中勉强够用。说白了,我们要的是“足够相信”这个碱基是对的。

  • 优质数据:Q30 ≥ 85%(Illumina HiSeq 平台常见)
  • 良好数据:Q30 ≥ 75%
  • 预警数据:Q30 < 70%,需要排查原因

但是你想想看,不同测序平台、不同读长模式,Q30 的分布差别很大。我见过 NovaSeq 6000 的双端 150 bp 数据,前 100 bp 的 Q30 能到 95%,最后 20 bp 掉到 70% 甚至更低。这是正常的吗?其实很常见——所以质控要看 per base sequence quality 曲线,而不是只看一个平均数。

工程技巧:用 FastQC 跑一遍,重点关注“Per base sequence quality”和“Adapter Content”两个模块。如果主工具是 CASAVA 1.8+ 版本的 FASTQ,质量编码默认是 Phred+33,用 Sanger 标准。老旧数据可能是 Phred+64,需要转换。

实战:用 FastQC 快速查看质量分布

别急着写复杂脚本,先跑个 FastQC:

fastqc sample_R1.fastq.gz sample_R2.fastq.gz -o qc_results/

输出会生成 HTML 报告。我通常在拿到新批次数据后,第一件事就是批量跑 FastQC,然后用 MultiQC 聚合一个总报告。这样能一眼看出哪些样本是“问题儿童”。

下面是一段从 FASTQ 文件里提取前几条记录并查看质量值的命令(用 zcat 和 head 快速预览):

zcat sample_R1.fastq.gz | head -8

输出示例(每个read占4行):
@EAS139:136:FC706VJ:2:2104:15343:197393 1:Y:18:ATCACG
CTACGTGACGTGACGTAGCTAGCTAGCTAGCTAGCTAGCTAG
+
IIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIIII

第 4 行是质量字符串,每个字符对应一个碱基的 Phred score(+33 偏移后)。用 ASCII 码值减去 33 就能换算成 Q 值。我早期手工解析过这个,现在当然都靠软件了,但理解底层的编码机制对排查异常很有帮助。

质控指标全景图

为了让你更直观地把握本章知识点的关系,我画了一张结构图。它展示了从测序原理到 Phred score,再到 Q30 以及其他关键指标的逻辑链条:

高通量测序数据质控知识结构 测序数据质控知识体系 测序原理 (SBS) 荧光信号 → Base Calling Phred score (Q值) Q30 ≥ 85% GC含量 / 接头污染 / 重复率 质控报告(FastQC / MultiQC) 理解逻辑:从测序原理出发,质量值是基于信号强度计算的;Q30只是一个阈值, 必须结合GC、接头等指标才能给出全面质控结论。

避坑指南:不要迷信单一指标

核心要点:Phred score 和 Q30 是基础,但绝不仅仅是这些。真正有经验的质控专家会结合以下维度:

  • 碱基分布:每条 read 上 A/T/C/G 比例是否稳定?随机文库应该四条碱基比例接近。
  • GC 含量偏差:对比物种参考基因组 GC 含量,偏差可能来自 PCR 偏好或污染。
  • 接头污染:文库插入片段过短时,read 末端会读到接头序列,导致比对失败。
  • 重复率:PCR duplicates 过高会降低有效覆盖度。

我记得有一次,合作方送来一批肿瘤 WES 数据,Q30 高达 94%,我差点就放行了。但习惯性地看了眼 GC 含量曲线,发现有一个明显的双峰——后来确认是两种不同物种的 DNA 混合了(污染)。从那以后,我每次质控都会把 FastQC 的 11 个模块全部扫一遍,绝不只看 summary。

郑重警告:很多生信新人会犯一个错误——用 Q30 比例来代替整个质控。Q30 只反映测序仪的碱基识别误差,而文库制备带来的系统性偏差(如 GC bias、接头污染)根本无法靠 Q30 体现。所以,请务必把 Q30 作为“必要条件”而非“充分条件”。

本章结束后,你应该能清晰说出:Phred score 是怎么算的、Q30 代表什么、为什么不能只用 Q30 做决定。下一层的知识——如何用命令行工具(FastQC、cutadapt、Trimmomatic)做实际质控和清洗——就把这些基础用起来。