10X单细胞基因集打分实战:AUCell、UCell、singscore三大方法保姆级教程
单细胞转录组测序技术正在彻底改变我们对复杂组织的理解方式。通过这项技术,我们能够以前所未有的分辨率观察组织中每一个细胞的基因表达特征。然而,如何从海量的单细胞数据中提取有生物学意义的信号,仍然是许多研究者面临的挑战。基因集打分方法(Gene Set Scoring)提供了一种强大的解决方案,它能够将单个基因的表达信息转化为通路或功能模块的活性评分,从而帮助我们更好地理解细胞的生物学状态。
1. 基因集打分方法概述与选择
基因集打分是一类将预定义的基因集(如通路基因、功能模块或标记基因)与单细胞表达数据整合的分析方法。这些方法通过量化基因集在每个细胞中的整体活性水平,帮助我们识别细胞状态、功能变化以及潜在的调控机制。
在众多基因集打分方法中,AUCell、UCell和singscore因其独特的设计理念和优异的性能表现脱颖而出。这三种方法都基于单样本排名(single-sample ranking)策略,即仅利用单个样本内部的基因表达排序信息进行计算,不依赖跨样本比较。这种特性使它们对批次效应具有天然的抵抗力,非常适合单细胞数据分析。
表1:三种主流基因集打分方法比较
| 方法 | 核心算法 | 优势 | 适用场景 |
|---|---|---|---|
| AUCell | 曲线下面积(AUC)计算 | 对基因集中基因的共表达敏感,能捕捉微弱信号 | 检测复杂通路活性 |
| UCell | Mann-Whitney U统计量 | 计算速度快,内存占用低 | 大规模数据集快速分析 |
| singscore | 与中心距离的标准化评分 | 区分上下调基因,无需参考集 | 方向性功能分析 |
这三种方法虽然原理不同,但都遵循相似的输入输出结构:
# 通用调用格式示例
scores <- method_name(expr_matrix, gene_sets)
其中expr_matrix是基因×细胞的表达矩阵,gene_sets是需要评估的基因集列表。输出结果通常是一个细胞×基因集的评分矩阵,可以直接整合到Seurat等单细胞分析流程中。
2. 环境配置与数据准备
2.1 软件包安装与加载
在开始分析前,我们需要确保所有必要的R包已正确安装。以下是完整的依赖包列表及其安装方法:
# CRAN包安装
cran_packages <- c("Seurat", "dplyr", "ggplot2", "msigdbr", "reshape2")
install.packages(cran_packages)
# Bioconductor包安装
bioc_packages <- c("AUCell", "UCell", "singscore", "GSEABase")
if (!require("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install(bioc_packages)
# 开发版包(如有需要)
devtools::install_github("carmonalab/UCell")
加载所有必要的包:
library(Seurat)
library(AUCell)
library(UCell)
library(singscore)
library(msigdbr)
library(dplyr)
2.2 示例数据加载与预处理
我们将使用SeuratData包中的PBMC数据集作为示例:
# 安装并加载PBMC数据集
if (!require("SeuratData", quietly = TRUE))
devtools::install_github("satijalab/seurat-data")
library(S

450

被折叠的 条评论
为什么被折叠?



