SeuratDisk 开源项目教程
项目介绍
SeuratDisk 是一个用于处理 HDF5 格式单细胞文件的开源项目。它旨在存储和分析多模态单细胞和空间解析表达实验数据,例如来自 CITE-seq 或 10X Visium 技术。SeuratDisk 支持快速和在磁盘上转换 h5Seurat 和 AnnData 对象,以增强 Seurat 和 Scanpy 之间的互操作性。
项目快速启动
安装 SeuratDisk
SeuratDisk 目前不在 CRAN 上提供,可以通过 GitHub 安装:
if (requireNamespace("remotes", quietly = TRUE)) {
install.packages("remotes")
}
remotes::install_github("mojaveazure/seurat-disk")
加载 SeuratDisk
library(SeuratDisk)
示例代码
以下是一个简单的示例,展示如何将一个 Seurat 对象保存为 h5Seurat 文件:
# 创建一个示例 Seurat 对象
library(Seurat)
pbmc_small <- CreateSeuratObject(counts = Matrix::Matrix(data = rnorm(100), nrow = 10, ncol = 10))
# 将 Seurat 对象保存为 h5Seurat 文件
SaveH5Seurat(pbmc_small, filename = "example.h5Seurat")
应用案例和最佳实践
案例一:CITE-seq 数据分析
CITE-seq 是一种结合了表面蛋白标记和转录组测序的技术。使用 SeuratDisk,可以轻松地将 CITE-seq 数据存储为 h5Seurat 文件,并进行后续分析。
# 加载 CITE-seq 数据
cite_seq_data <- Read10X("path_to_cite_seq_data")
cite_seq_seurat <- CreateSeuratObject(counts = cite_seq_data$`Gene Expression`)
# 添加表面蛋白标记数据
cite_seq_seurat[["Protein"]] <- CreateAssayObject(counts = cite_seq_data$`Antibody Capture`)
# 保存为 h5Seurat 文件
SaveH5Seurat(cite_seq_seurat, filename = "cite_seq.h5Seurat")
最佳实践
- 数据备份:在处理大型单细胞数据时,定期备份 h5Seurat 文件至外部存储设备。
- 内存管理:使用
on-disk
转换功能,避免内存不足问题。 - 互操作性:利用 SeuratDisk 的转换功能,实现 Seurat 和 Scanpy 之间的无缝数据交换。
典型生态项目
Seurat
Seurat 是一个用于单细胞 RNA 测序数据分析的 R 包,广泛应用于单细胞数据的质控、聚类和差异表达分析。
Scanpy
Scanpy 是一个用于单细胞基因表达数据分析的 Python 库,提供了与 Seurat 类似的功能,但使用 Python 语言。
AnnData
AnnData 是 Scanpy 中使用的数据结构,用于存储单细胞数据。SeuratDisk 支持 h5Seurat 和 AnnData 之间的转换,增强了不同工具之间的互操作性。
通过 SeuratDisk,用户可以轻松地在 Seurat 和 Scanpy 之间共享和转换数据,充分利用两个生态系统的优势。