第 1 章 空间转录组学基础:技术原理、数据特点、应用场景

聊空间转录组之前,我先问个问题:传统单细胞测序能告诉你每个细胞里基因表达多少,可它丢掉了什么?

答案是——位置信息。

组织里一个癌细胞周围是免疫细胞还是成纤维细胞,这直接决定了它会不会被清除。空间转录组,说白了就是在保留组织原位信息的前提下,同时拿到基因表达谱。我入行时最着迷的就是这件事:终于能「看见」基因在哪表达了。

1.1 技术原理:怎么拿到"位置+表达"?

目前主流技术可以粗略分成两大类:一类靠「捕获」,一类靠「成像」。

1.1.1 基于捕获的方法(如 10x Visium、Slide-seq)

核心思路:在玻片上铺一层带有空间条形码(barcode)的捕获探针。组织切片贴上去后,mRNA 扩散到最近的探针上,被带上空间坐标 ID。测序后每个 reads 都自带坐标标签,于是每个 spot 就是一个小区域的表达谱。

关键点:每个 spot 并非单个细胞,而是 1~10 个细胞的混合体(取决于 spot 直径和细胞密度)。你后期做反卷积才能拆到单细胞级别。

我个人习惯用 Visium 做初步探索,因为它的试剂盒成熟、社区支持好。但注意它的分辨率约 55 μm 一个 spot,某些精细结构(比如肾小球)会模糊掉。

1.1.2 基于成像的方法(如 MERFISH、seqFISH+、Xenium)

这些靠反复杂交荧光探针加上超分辨成像,直接「看」到每个 mRNA 分子在细胞里的位置。分辨率可以达到亚细胞级别,成本也高一个量级。

我去年在 Xenium 平台上跑过一个胰腺癌样本,细胞边界清晰得让我惊叹——但数据量也是真大,单张切片就 200 GB 的 tiff 文件。

平台 分辨率 基因数 通量 典型样本数
10x Visium ~55 μm 全转录组 高(批处理) 6~12 张切片
Slide-seqV2 ~10 μm 全转录组 中 4~8 张
MERFISH ~0.1 μm 100~400 个靶标 低 1~3 张
Xenium 亚细胞 200~500 个靶标 中 1~4 张

选型建议:你想看全局基因互作 → 选 Visium;你想精确定位几个关键基因的细胞类型 → 选 MERFISH 或 Xenium。后者没法做全转录组,别搞混了。

1.2 数据特点:和普通单细胞数据有什么不同?

空间转录组数据天生带三个「麻烦」:

  1. 高维稀疏:和单细胞一样,零膨胀严重。一个 spot 里几百个细胞,但很多基因没表达。我曾经处理过一张切片,总 UMI 才 300 万,却有超过 16000 个基因——90% 的基因在超过一半的 spot 里是 0。
  2. 空间依赖性:相邻 spot 表达谱相似,这不是噪声,是生物学事实。但很多常规的统计模型(假设独立同分布)直接砸在这上面就失效了。
  3. 批次效应疯狂:不同切片、不同样本、甚至同一张切片的不同区域,都可能因为组织固定、通透时间差异导致系统性偏移。你想想看,这比单细胞批次效应更难纠正——因为没有「细胞类型」这种独立去混淆的依据。

避坑:我曾以为空间数据可以直接套用单细胞的数据预处理流程——标准化 + PCA + UMAP → 聚类。结果发现空间聚类结果完全没有连续区域,就像盐撒在桌面上。后来才意识到必须加入空间邻接信息做平滑。记住:空间数据不要当普通表格去处理。

1.3 应用场景:为什么我们需要空间信息?

答案很直接:因为组织不是匀浆,细胞之间有「邻里关系」。

  • 肿瘤微环境:看免疫细胞怎么聚集在肿瘤边缘或浸润进去。我帮一家药企跑过肺癌样本,观察到 CD8+ T 细胞只在三级淋巴结构附近活化——如果只看单细胞数据,根本画不出这个空间梯度。
  • 发育生物学:追踪细胞谱系在胚胎里的迁移路径。比如斑马鱼心脏发育,几个基因的时空表达顺序决定了心管怎么扭曲。
  • 神经科学:海马体里不同亚区的神经元表达不同离子通道,空间转录组能把 CA1/CA3 的边界精确到几十微米。
  • 病理活检辅助:传统 H&E 染色只能看出形态,空间转录组能告诉你这个「看起来正常」的区域其实已经启动了发炎信号。
空间转录组分析典型流程 组织切片 + 捕获/成像 原位杂交 / 测序 原始数据(fastq/tiff) 质控 + 比对 + 计数 / 图像配准 空间表达矩阵 (N spots × M genes) 空间邻接矩阵 (坐标/图结构) 空间聚类(BayesSpace / stLearn) 考虑空间平滑性的聚类 差异表达 + 空间特征基因 识别区域特异性 marker 生物学解释 / 病理验证 注意:空间维度必须显式建模——相邻 spot 的表达不是独立的,这是空间转录组建模的核心前提。

嗯,说完这些基础,你应该能理解为什么我们需要专门的空间转录组建模方法了。接下来的章节,我会带你一步步从数据预处理搭建模型、设计损失函数,再到调参出图。准备好了就开始干吧。