4. 多组学数据标准化与批次校正

多组学整合中最容易被低估、却最容易毁掉下游结论的一步,是标准化与批次校正。转录组、蛋白组、代谢组各自来自不同平台、不同批次、不同时间点,甚至不同实验室。如果不处理,主成分分析(PCA)上样本往往按“批次”而不是按“生物学分组”聚在一起,差异分析得到的差异特征可能只是仪器漂移或建库试剂批号差异。本节围绕三类主流方法——ComBat、limma、RUV——讲清它们各自校正什么、怎么用、以及如何判断校正是否“过头”。

先分清两类干扰:批次效应与技术噪声

批次效应(batch effect)指样本处理、建库、测序/上机、质谱运行等非生物学因素带来的系统性偏差,通常表现为同一批次样本整体偏移。技术噪声则更偏向随机误差,如低表达基因的计数波动。标准化(normalization)主要解决样本间测序深度、上样量、总离子流等尺度差异;批次校正(batch correction)则进一步去除已知批次带来的系统偏移。二者顺序通常是:先组内标准化,再做批次校正,最后评估。

判断是否需要校正的快速信号:PCA/UMAP 中批次标签与主成分高度相关;同一生物学分组在不同批次中分布不均;已知阳性对照基因在批次间方向不一致。

ComBat:基于经验贝叶斯的批次校正

ComBat 最初用于基因表达芯片,后被广泛用于 RNA-seq、蛋白组和代谢组。它假设每个特征在每个批次中有一个加性偏移(location)和一个乘性缩放(scale),并用经验贝叶斯把各批次的参数向整体均值“收缩”,从而在批次样本量小的时候更稳健。其核心模型可简写为:

y_ijg = α_g + Xβ_g + γ_ig + δ_ig * ε_ijg

其中:
y_ijg:第 i 批次第 j 样本第 g 特征的值
α_g + Xβ_g:生物学协变量(如分组、年龄、性别)贡献
γ_ig:批次 i 对特征 g 的加性偏移
δ_ig:批次 i 对特征 g 的乘性缩放
ε_ijg:残差

实际操作中,ComBat 的关键是提供正确的 batch 和 mod(生物学协变量)矩阵。若把分组信息误放入 batch,会把真实生物学差异也校正掉。R 中常用 sva::ComBat,对 RNA-seq 计数建议先做 vst 或 log2(CPM+1) 再校正。示例参数:par.prior=TRUE 表示使用参数化先验,mean.only=FALSE 表示同时校正位置和尺度;当批次内样本极少(如每组少于 3 个)时可考虑 mean.only=TRUE 降低过拟合风险。

limma:线性模型下的批次与协变量联合校正

limma 的 removeBatchEffect 是另一条常用路径。它把批次作为设计矩阵中的协变量,用线性模型估计批次系数并从表达矩阵中扣除,同时保留分组等生物学效应。与 ComBat 相比,limma 更“透明”:你可以直接看到设计矩阵,控制哪些因素被保留、哪些被扣除。典型设计为 ~ group + batch,校正时用 removeBatchEffect(x, batch=batch, design=design)。注意:removeBatchEffect 只应用于可视化或聚类等探索性分析,不应把校正后的矩阵直接用于差异表达检验,因为差异检验本身应在模型中加入 batch 协变量,而不是先扣再检验。

RUV:用阴性对照基因估计并去除未知因素

RUV(Remove Unwanted Variation)系列方法适合“批次未知或未记录”的场景。它利用一组阴性对照特征(negative control genes,如管家基因或已知不受处理影响的基因)来估计不需要的变异因子。RUVg 假设阴性对照基因不受生物学条件影响,用其估计未知因子 W;RUVs 则利用重复样本(replicate)估计;RUVr 使用残差。核心思想是:

Y = Xβ + Wα + ε

X:已知生物学协变量
W:未知不需要的变异因子(由阴性对照估计)
α:对应载荷
校正后:Y_corrected = Y - Wα

RUV 的难点在于阴性对照基因的选择。若把受处理影响的基因误选为阴性对照,会连同真实信号一起被扣除。实践中可先用管家基因或已知稳定表达基因作为初始阴性集,再通过诊断图检查校正后是否仍残留批次结构。

多组学标准化与批次校正决策路径 原始多组学矩阵 转录组 / 蛋白组 / 代谢组 组内标准化 CPM / TPM / log2 / 分位数 批次信息检查 PCA / 批次标签相关性 是否存在批次? 是 / 否 / 未知 已知批次 → ComBat / limma ComBat:经验贝叶斯收缩 limma:设计矩阵 ~ group + batch 未知批次 → RUV RUVg:阴性对照基因 RUVs:重复样本 无明显批次 → 仅标准化 保留生物学变异 避免过度校正 校正效果评估 PCA 批次分离度 ↓ | 生物学分组分离度 ↑ | 阴性对照残留检查 | 差异特征一致性 跨平台标准化策略 平台内标准化 → 跨平台映射(基因ID / 蛋白ID / 代谢物ID 统一)→ 联合矩阵分位数标准化 → 批次校正 → 联合降维验证 注意:不同组学量纲差异大,建议先组学内 z-score 或 rank 转换,再进入联合校正

跨平台标准化策略

多组学整合时,跨平台标准化比单组学批次校正更复杂。不同平台不仅量纲不同(RNA-seq 计数、蛋白组 LFQ 强度、代谢组峰面积),特征空间也不一致。推荐流程是:先在各组学内部完成标准化与批次校正,再统一特征标识(基因 ID、UniProt、HMDB 等),然后对联合矩阵做分位数标准化或 z-score,最后用 ComBat 或 limma 处理跨平台批次。若样本量允许,可保留一个“桥接样本”或参考样本集,用于估计平台间映射关系。

校正效果评估:不能只看“批次消失”

校正过度的典型表现是:批次分离确实消失了,但生物学分组也一起消失,差异分析结果大幅缩水。评估应同时看三件事:一是 PCA/UMAP 中批次标签的解释方差是否下降;二是生物学分组是否仍然可分;三是已知阳性对照(如 spike-in 或预期差异基因)是否仍保留信号。常用量化指标包括 kBET(批次混合度)、LISI(局部混合度)和 ASW(轮廓系数)。若 kBET 接受率上升但生物学 ASW 明显下降,说明校正可能过度。

不要把校正后的矩阵直接用于差异表达检验。正确做法是:差异检验模型中加入 batch 协变量(如 ~ group + batch),校正矩阵仅用于聚类、降维和可视化。

一个可复用的参数检查清单

检查项ComBatlimmaRUV
批次是否已知必须已知必须已知可未知
需要生物学协变量mod 矩阵design 矩阵X 矩阵
阴性对照不需要不需要必须提供
小批次稳健性较好(收缩)一般取决于对照
典型 R 函数sva::ComBatlimma::removeBatchEffectRUVSeq::RUVg

实际项目中,建议先用 limma 或 ComBat 处理已知批次,再用 RUV 作为补充处理未知变异;每次校正后都重新做 PCA 和聚类,确认生物学信号没有被误删。标准化与批次校正不是一次性动作,而是需要与下游分析反复验证的迭代过程。