跳转至

839. 空间组学前沿技术

一句话概述:空间组学 = 在组织切片的原位位置上测量基因表达/蛋白/代谢物,解决了"哪个基因在哪里表达"的问题——2025年Nature Methods年度技术。

核心知识点速查表

技术路线代表平台分辨率通量
测序型10x Visium/Visium HD55μm/2μm全转录组
测序型Slide-seq V210μm全转录组
成像型MERFISH亚细胞数百-数千基因
成像型seqFISH+亚细胞数千基因
成像型CosMx (NanoString)亚细胞数千基因
蛋白质CODEX/PhenoCycler亚细胞数十蛋白
蛋白质MIBI亚细胞数十蛋白

一、白话理解空间组学

传统单细胞测序 = 把一块组织打散成单个细胞 → 测序
→ 知道每个细胞表达什么基因
→ 但不知道细胞原来在组织中的哪个位置
→ 就像拆了一栋大楼,知道每块砖的材质,但不知道砖在哪层

空间组学 = 在组织切片上原位测量基因表达
→ 不打散组织,直接在原位测
→ 既知道"表达什么",也知道"在哪里"
→ 就像给大楼的每块砖都做了CT扫描

二、主流技术详解

2.1 10x Visium / Visium HD

Visium原理(最常用的空间转录组技术):
1. 将组织切片放在特殊载玻片上
2. 载玻片上有数千个"捕获点"(spot)
3. 每个spot有独特条形码
4. 组织RNA被释放 → 被spot捕获 → 建库测序
5. 测序后根据条形码映射回空间位置

Visium: 每个spot ~55μm(约10个细胞)
Visium HD (2024): 每个spot 2μm × 2μm(单细胞分辨率!)

2.2 MERFISH(单分子荧光原位杂交)

MERFISH原理:
1. 设计数千个基因的探针
2. 每个基因用独特的二进制编码标记
3. 多轮荧光成像 → 每轮读取编码的一位
4. 解码所有位 → 确定每个分子属于哪个基因
5. 分辨率可达亚细胞级别

优势:亚细胞分辨率、可测数千基因
劣势:设备昂贵、分析复杂

三、空间组学数据分析

# 空间转录组分析流程(Squidpy + Scanpy)
import scanpy as sc                    # 单细胞分析
import squidpy as sq                   # 空间分析

# 1. 读取Visium数据
adata = sc.read_visium(                # 读取10x Visium数据
    "path/to/spaceranger/outs/"        # Space Ranger输出目录
)

# 2. 基础预处理
sc.pp.normalize_total(adata)           # 标准化
sc.pp.log1p(adata)                     # 对数转换
sc.pp.highly_variable_genes(adata)     # 高变基因
sc.pp.pca(adata)                       # PCA降维
sc.pp.neighbors(adata)                 # 计算邻域
sc.tl.umap(adata)                      # UMAP降维
sc.tl.leiden(adata)                    # 聚类

# 3. 空间可视化
sc.pl.spatial(adata,                   # 空间绘图
              color="leiden",          # 按聚类着色
              spot_size=1.5)           # 点大小

# 4. 空间邻域分析
sq.gr.spatial_neighbors(adata,         # 构建空间邻域图
                        n_rings=2)     # 2环邻域

# 5. 空间自相关(Moran's I)
sq.gr.spatial_autocorr(adata,          # 空间自相关分析
                       genes=adata.var_names[:100],  # 前100个基因
                       mode="moran")   # Moran's I统计量
# Moran's I > 0 → 空间正相关(聚集表达)
# Moran's I ≈ 0 → 随机分布
# Moran's I < 0 → 空间负相关(分散表达)

# 6. 配体-受体空间分析
sq.gr.ligrec(adata,                    # 细胞间通讯
             cluster_key="leiden",     # 聚类标签
             n_perms=1000)             # 置换次数

# 7. 空间转录组反卷积
# 将55μm的spot分解为单细胞组成比例
# 工具:Cell2location, RCTD, SPOTlight

3.1 Space Ranger(10x官方流程)

# Space Ranger —— 10x Visium数据预处理

spaceranger count \
    --id=sample_001 \                  # 样本ID
    --transcriptome=refdata-gex-GRCh38 \ # 参考转录组
    --fastqs=data/fastqs/ \            # FASTQ目录
    --image=data/tissue_image.tif \    # 组织H&E图像
    --slide=V10J25-015 \               # 载玻片序列号
    --area=A1                          # 捕获区域

# 输出文件:
# filtered_feature_bc_matrix.h5  → 基因表达矩阵
# spatial/                       → 空间坐标和图像
# web_summary.html              → 质控报告

四、空间多组学整合

# SIMO —— 空间多组学整合方法 (Nature Comms 2025)
# 整合空间转录组 + 单细胞多模态数据

# 核心思路:
# 1. 空间转录组提供位置信息
# 2. 单细胞scATAC-seq提供染色质可及性
# 3. SIMO通过概率对齐将两者整合
# → 推断出每个空间位置的表观遗传状态

# 其他空间整合工具:
# Tangram: 将单细胞数据映射到空间坐标
# Cell2location: 空间反卷积(估计细胞类型组成)
# RCTD: 空间spot细胞类型解卷积

五、面试高频问题

  1. Q: 空间转录组和单细胞转录组有什么区别? A: 单细胞保留单细胞分辨率但丢失空间信息;空间保留位置信息但早期分辨率较低(Visium一个spot~10个细胞)。2024年Visium HD实现了单细胞分辨率。

  2. Q: 你知道哪些空间组学分析工具? A: 预处理用Space Ranger,下游分析用Squidpy/scanpy,反卷积用Cell2location,细胞通讯用CellChat。

  3. Q: 空间自相关是什么意思? A: 用Moran's I检验某个基因的表达是否在空间上聚集。I>0表示空间聚集(如肿瘤特异基因集中在肿瘤区域),I≈0表示随机分布。

常见报错与解决

问题解决
Space Ranger找不到组织区域手动在Loupe Browser中选择组织区域
空间坐标和图像不匹配检查载玻片序列号和捕获区域参数
Visium数据每个spot基因数太少增加测序深度(推荐50K reads/spot)
反卷积结果不准使用高质量的单细胞参考数据集

速查表

# 空间组学分析流程
原始数据 → Space Ranger → Scanpy/Squidpy → 结果
          (预处理)     (分析+可视化)

# 核心分析
sc.pl.spatial()           # 空间可视化
sq.gr.spatial_neighbors() # 空间邻域
sq.gr.spatial_autocorr()  # 空间自相关(Moran's I)
sq.gr.ligrec()            # 配体-受体分析

# 技术选择
大面积组织探索 → Visium HD (全转录组)
高分辨率局部 → MERFISH/CosMx (亚细胞)
蛋白质空间分布 → CODEX/MIBI