第3节:批次效应产生的根源与影响

做空间转录组分析,尤其是Visium数据,你迟早会遇到一个绕不开的问题——批次效应。

我记得最开始接触这个领域时,总觉得“批次校正”是个可做可不做的步骤。直到有一次,我把同一个样本切成两张芯片跑,结果两张片子显示出来的基因表达模式完全对不上。一张说是“炎症区域高表达”,另一张说是“肿瘤核心区域高表达”。同一个组织啊,你说这结论能信吗?

从那时候起,我就养成了一个习惯:不管多好的实验设计,先检查批次效应。这一节,我就跟你聊聊批次效应到底是什么、从哪里来、又会对分析产生什么影响。

3.1 什么是批次效应?先不说理论,看个例子

假设你要比较两张Visium切片:一张是昨天跑的,一张是上个月跑的。你把两张图合并在一起做聚类,发现——聚类的结果不是按组织区域分开,而是按“切片生产的日期”分开。这就是典型的批次效应。

说白了,数据里的变异,不是生物变异,而是实验操作带来的噪音。

关于批次效应的核心认识

  • 批次效应 ≠ 真实生物学差异
  • 它让样本间的技术差异盖过生物差异
  • 不校正的话,你分析出来的“发现”很可能是假的

为什么我会这么强调?因为我在一次项目里吃过这个亏。当时两个样本的聚类完全分开,我兴奋地以为发现了一个新亚群。结果仔细一看,那两个样本的试剂批号不一样。你说巧不巧?

3.2 批次效应是怎么产生的?我拆成三类讲

Visium数据的批次效应来源,其实很杂。我一般把它们分成三类:技术因素、操作因素、环境因素。下面这张SVG图可以帮你快速理解它们的层级关系:

批次效应的来源与影响路径 批次效应来源 技术因素 操作因素 环境因素 • 不同测序批次 • 芯片生产批号不同 • 探针/引物批次变更 • 不同实验人员操作 • 透化时间不一致 • 文库构建方案不同 • 实验室温度/湿度 • 试剂存放时间不同 • 仪器校准状态差异 影响数据一致性 → 降低统计效力 → 假阳性/假阴性 最终结果:聚类偏移、差异基因误判、空间模式混淆

三类因素,每类都能让你的数据“看起来像两套数据”。

3.3 具体拆解:哪些环节最容易引入批次效应

我列个表格给你看,这是我在十几个项目中总结出来的“高危环节”:

环节具体因素影响程度典型案例
芯片生产芯片批次、捕获探针效率高同一组织用不同批号芯片,检测基因数差20%
组织透化透化时间、温度、酶浓度高透化时间差2分钟,mRNA捕获效率差异显著
文库构建PCR循环数、酶体系版本中不同版本试剂盒,GC偏好不同
测序测序仪型号、流动槽批次中NovaSeq vs NextSeq,读数质量分布不一致
环境实验室温湿度、试剂放置时间中低夏季和冬季的实验,RNA降解率不同

一个实用的记录习惯:我在做实验记录时,会专门建一个Excel,记下每次实验的芯片批号、试剂批号、操作人、透化时间、测序日期。别小看这个习惯,后面分析发现批次效应时你会感谢自己。

3.4 批次效应的具体影响:一句话总结就是“数据乱套了”

你想想看,如果两张切片因为技术原因被分成两群,你聚类时把它们硬合在一起,会怎么样?

  • 聚类结果不可信:你分出来的cluster可能根本不是细胞类型,而是“批次标签”。
  • 差异基因分析偏倚:你找到的marker基因,可能是因为批次之间的背景噪音差异造成的。
  • 空间模式被扭曲:同一个组织区域的基因表达,在两批次里趋势可能相反。
  • 统计效力下降:不校正的话,后续的所有统计检验都会受干扰。

我以前接手过一个项目,三张切片数据,两张来自同一个实验室,一张来自外送。合并之后做聚类,外送的那张独立成一群。团队里的人差点以为是发现了一个全新的细胞状态……结果只是批次差异。校正好之后再聚类,那些“特殊”的细胞群就消失了。

注意:不是所有差异都是批次效应

有时候,批次差异可能反映的是真实的生物学差异。比如同一种肿瘤,不同医院的手术样本,肿瘤微环境本身就不一样。判断是不是批次效应,需要结合实验设计:重复样本在不同批次中表现是否一致?有技术重复能帮你验证。我在实践中会先做PCA,看看第1-2主成分是不是按批次分类——如果是,基本就确定要校正了。

3.5 什么时候必须做批次校正?什么时候可以不做?

这个问题我经常被问到。我的回答很简单,分成四种情况:

场景是否需要校正原因
同一芯片、同一个实验流程通常不需要技术变异最小,批次效应不明显
相同流程、不同批次(如间隔一周)建议评估后决定先做PCA/UMAP看是否聚类分开
不同实验人员、不同试剂批号必须校正变异来源明确,不校正结果不可信
跨平台数据(如Visium vs. slide-seq)必须校正平台间差异远大于批次效应,是另一个量级的问题

个人的一条原则:只要数据来自不同批次,我都会至少跑一遍批次效应检测。多一步检查,比后面推倒重来要省事得多。我在一个项目里就因为没做这一步,多花了两个月的分析时间才发现是批次搞的鬼。