批次效应,你躲不开的“实验指纹”

大家好。今天咱们聊聊批次效应。说实话,这是单细胞数据分析里最容易让人“翻车”的坑。我入行头两年,有次整合三个批次的10x数据,结果画出来的UMAP图,每个批次各成一个“山头”,完全看不到生物学差异。主管一看图,就问我:“你确定这些是同一批样本?”那场面,记忆犹新。

什么是批次效应?说白了,就是非生物学因素带来的系统性偏差。你想想看,同样一批细胞,今天做和处理完明天做,结果能完全一样吗?实验室湿度、试剂批号、操作手法,甚至当天的精神状态,都会影响数据。这就是我们常说的“实验指纹”。

为了方便理解,我画了张图。它展示了批次效应的来龙去脉。

批次效应:从产生到影响的框架 来源 样本处理差异 试剂批次不同 仪器状态变化 人员操作习惯 表现 样本聚类分离 批次内高度相似 均值偏移明显 影响 假阳性差异增多 生物差异被掩盖 整合效果极差 经典案例 不同实验日期 不同试剂批次

批次效应的来源:藏在实验流程里的“暗流”

我总结过,批次效应的来源基本可以归为这几类。你可以拿着自己的实验记录表,对照着看看。

  • 样本处理流程不同:比如解离时间长短不一样,细胞活率就不一样。Drop-seq的实验,磁珠批次和微流控芯片的批次,对细胞捕获效率影响很大。
  • 试剂批次变更:我发现,GEM生成用的油相、逆转录酶甚至PBS的批次,都能引入系统差异。别小看这些“消耗品”。
  • 仪器状态与设置:10x的Chromium仪器,不同通道之间的液滴生成效率不完全一致。测序仪的流动槽位置也会产生偏差。
  • 操作人员与时间:不同人加样手法不一样。同一个人上午和下午做的实验,管子里气泡的比例都能差不少。

避坑指南:我曾经在一个为期半年的项目中,中间换了一次逆转录酶的货号。结果整合后发现,使用旧酶的样本和新酶的样本,在UMAP上完美分成了两群。后来我花了三周才确定这是批次效应。所以,实验记录本上请务必备注所有关键试剂的批号。

注意:批次效应是“系统性”的,不是随机噪声。它的特点是:同一批次内的样本,即使来自不同病人,也比来自同一个人但不同批次的样本,在数据上更相似。这是判断批次效应的金标准。

表现形式:你该怎么“看”到它

批次效应在分析结果里长什么样?我教你几个“看”法。

最常见的,就是在t-SNE或UMAP降维图上,样本不是按细胞类型聚类,而是按实验批次聚类。你本来期望看到的是上皮细胞、T细胞、B细胞各成一团,结果变成了“批次1团”、“批次2团”、“批次3团”。嗯,这就很明显了。

另外,PCA分析时,PC1或PC2的loading里,如果高权重的基因全是线粒体基因或核糖体基因,而不是细胞类型marker基因,那也说明批次效应在“作妖”。我记得有一次,我拿到一个公共数据,一跑QC就发现PC1全是“MALAT1”和“XIST”,这明显是技术上处理不一致造成的。

再专业一点,可以看细胞间的相关矩阵。如果同批次内的样本相关系数很高,而不同批次间的很低,那就要小心了。我建议遇到这种情况,先做做“岭回归”检查一下。

对下游分析的影响:蝴蝶效应

分析步骤 批次效应带来的后果
聚类分析 产生假聚类群,混入真实细胞亚群
差异表达 检测到大量假阳性基因(实质是批次相关)
细胞类型注释 注释结果因批次不同而错乱
轨迹推断 分化轨迹被批次效应扭曲
跨样本整合 根本整合不到一起,强行整合会丢失生物学信号

我在项目中被坑过最深的一次,是做药物处理前后对比。处理好后的样本和对照的样本来自不同批次。结果差异基因列表里,前20个有15个是批次标记基因。我花了两周时间做验证实验,才发现选错了靶点。所以,批次效应不只是数据问题,它能让你浪费实验经费和时间。

经典案例:那些“看起来”很像的样本

我讲两个亲身经历的案例,希望能帮你建立直觉。

案例一:不同实验日期

2019年有个公开数据集,是CITE-seq做的,包含健康的PBMC。数据质量很好,但问题是前后分两次测序,间隔了八个月。我拿过来一整合,好家伙,同一个人的CD4+ T细胞,在UMAP上分成了两个截然不同的群。后来发现,两次实验用的抗体批号不同,导致某些表面蛋白的检测效率发生偏移。

# R代码示例:快速检查批次效应(用Seurat)
library(Seurat)
merge_obj <- merge(sample1, sample2)
merge_obj <- NormalizeData(merge_obj) %>% FindVariableFeatures() %>% ScaleData() %>% RunPCA()
DimPlot(merge_obj, group.by = "orig.ident")
# 看图,如果两个批次完全分离,说明批次效应很强

案例二:不同试剂批次

我有个朋友做Drop-seq的实验,他之前一直用A公司的微流控芯片,后来换成B公司的。同样是相同的细胞,在基因表达谱上出现了系统性差异,特别是细胞捕获效率和基因检出数。这类情况下,普通标准化方法根本校正不过来。我给他的建议是,要么换回同一批号芯片,要么在分析时必须使用Harmony或CCA这类专门处理批次的工具。

我的建议:如果你发现两个批次的差异基因里,线粒体基因、ACTB、GAPDH这类看家基因变化很大,那几乎就可以断定是批次效应了。真正的生物学差异,不会拿看家基因“开刀”。