返回软件与算法

Software & Algorithm Detail

单细胞分析Single-cellR 包

Seurat v5

R 生态中主流的单细胞分析框架,覆盖质控、整合、降维、聚类和注释。

资源类型
R 包
方法分类
单细胞分析
原始分类
Single-cell
创建时间
2026/6/3

Benchmark

性能基准测试

当前图表用于比较不同数据规模下的时间消耗和内存消耗。

性能基准测试

R 4.4 / Seurat v5 / SCTransform

Benchmark

Documentation

软件原理、用法与参数

统一使用 Markdown 文档渲染,保留命令行代码块、参数表和示例说明。

Seurat v5 单细胞分析框架

工具定位

Seurat v5 是 R 生态中最常用的单细胞分析框架之一,负责从 feature-barcode matrix 出发完成 QC、归一化、降维、聚类、marker 鉴定、整合和注释。

适用场景

  • 适合:10x scRNA-seq、整合多样本、marker gene 分析、细胞类型注释。
  • 不适合:极大规模百万细胞项目的纯内存分析,此时可结合 BPCells、Sketch 或 Scanpy。

输入与输出

类型文件/对象说明
输入filtered_feature_bc_matrix/Cell Ranger 输出
输入sample metadata分组、批次、处理信息
输出Seurat object保存完整分析对象
输出UMAP/tSNE 图细胞群可视化
输出marker gene 表注释和机制分析依据

安装方式

install.packages("Seurat")
install.packages(c("patchwork", "dplyr", "ggplot2"))
library(Seurat)
packageVersion("Seurat")

推荐项目目录

project_seurat/
├── 00_cellranger/
│   └── sample01/outs/filtered_feature_bc_matrix/
├── 01_objects/
├── 02_qc/
├── 03_cluster/
├── 04_markers/
└── scripts/

最小可运行示例

library(Seurat)
library(dplyr)

counts <- Read10X("00_cellranger/sample01/outs/filtered_feature_bc_matrix")
obj <- CreateSeuratObject(counts = counts, project = "sample01", min.cells = 3, min.features = 200)
obj[["percent.mt"]] <- PercentageFeatureSet(obj, pattern = "^MT-")

obj <- subset(obj, subset = nFeature_RNA > 200 & nFeature_RNA < 6000 & percent.mt < 15)
obj <- SCTransform(obj, vars.to.regress = "percent.mt")
obj <- RunPCA(obj)
obj <- FindNeighbors(obj, dims = 1:30)
obj <- FindClusters(obj, resolution = 0.6)
obj <- RunUMAP(obj, dims = 1:30)

markers <- FindAllMarkers(obj, only.pos = TRUE, min.pct = 0.25, logfc.threshold = 0.25)
saveRDS(obj, "01_objects/sample01_seurat.rds")
write.csv(markers, "04_markers/all_cluster_markers.csv")

常用参数表

参数/函数含义推荐值注意事项
min.cells基因至少出现细胞数3过滤极低可信基因
min.features细胞至少检测基因数200初步过滤空 droplets
percent.mt线粒体比例人鼠常用 <10-20%组织差异很大,不能机械套用
SCTransform()归一化方法推荐多样本项目更稳健
dims使用 PCA 维度1:20 到 1:50用 ElbowPlot/JackStraw 辅助
resolution聚类分辨率0.2-1.2越高 cluster 越多
FindAllMarkers()marker 鉴定only.pos=TRUE后续用于细胞注释
vars.to.regress回归变量percent.mt 可选谨慎回归 cell cycle 等真实信号

结果解读

  • QC 小提琴图:看 nFeature_RNAnCount_RNApercent.mt 是否有异常细胞。
  • UMAP:相邻 cluster 不一定代表谱系关系,只是低维邻近。
  • marker gene:注释细胞类型时要结合多个 marker,不要只看单个基因。
  • resolution:需要根据组织、研究问题和 marker 清晰度调参。

常见错误

问题可能原因解决办法
线粒体基因识别失败物种前缀不同人用 ^MT-,小鼠常用 ^mt-
cluster 过碎resolution 太高降低 resolution 并检查 marker
批次混在生物分组里实验设计混杂分析前先画样本来源 UMAP
注释不稳定marker 不明确结合 SingleR、Azimuth 或文献 marker

关联流程

  • 10x 单细胞基础降维聚类
  • 单细胞高级下游:拟时序、通讯、RNA velocity