SCP 单细胞数据分析管道使用教程
1. 项目介绍
SCP(Single-Cell Pipeline)是一个端到端的单细胞数据分析管道,旨在促进单细胞数据的全面分析和探索。该项目提供了一系列工具,用于单细胞数据的处理和下游分析,包括质量控制、归一化、特征降维、细胞群体识别、数据整合、差异表达分析、富集分析、动态特征识别等。SCP 的核心功能围绕 Seurat 对象开发,兼容其他 Seurat 函数,适用于 R 语言环境。
2. 项目快速启动
2.1 安装 SCP
首先,确保你已经安装了 devtools 包。如果没有安装,可以使用以下命令进行安装:
if (!require("devtools", quietly = TRUE)) {
install.packages("devtools")
}
然后,使用 devtools 安装 SCP:
devtools::install_github("zhanghao-njmu/SCP")
2.2 创建 Python 环境
为了运行某些功能(如 RunPAGA 或 RunSCVELO),SCP 需要使用 conda 创建一个独立的 Python 环境。默认的环境名称为 "SCP_env",你可以通过设置 options(SCP_env_name="new_name") 来指定环境名称。
options(SCP_env_name="new_name")
SCP::PrepareEnv()
如果 conda 二进制文件未找到,SCP 将自动下载并安装 miniconda。你也可以通过设置 reticulate::conda_binary 选项来指定 conda 二进制文件的路径:
options(reticulate.conda_binary = "/path/to/conda")
SCP::PrepareEnv()
2.3 快速启动示例
以下是一个简单的示例,展示如何加载数据并进行基本分析:
library(SCP)
data("pancreas_sub")
# 运行 PAGA 分析
pancreas_sub <- RunPAGA(srt = pancreas_sub, group_by = "SubCellType", linear_reduction = "PCA", nonlinear_reduction = "UMAP")
# 绘制细胞分布图
CellDimPlot(pancreas_sub, group_by = "SubCellType", reduction = "draw_graph_fr")
3. 应用案例和最佳实践
3.1 单细胞数据质量控制
在单细胞数据分析中,质量控制是一个关键步骤。SCP 提供了 RunCellQC 函数来执行质量控制:
pancreas_sub <- RunCellQC(srt = pancreas_sub)
CellDimPlot(srt = pancreas_sub, group_by = "CellQC", reduction = "UMAP")
3.2 标准分析管道
SCP 提供了一个标准分析管道 Standard_SCP,可以自动执行一系列分析步骤:
pancreas_sub <- Standard_SCP(srt = pancreas_sub)
3.3 数据整合
SCP 支持多种数据整合方法,如 Seurat、scVI、MNN 等:
pancreas_sub <- RunIntegration(srt = pancreas_sub, method = "Seurat")
4. 典型生态项目
4.1 Seurat
Seurat 是一个广泛使用的单细胞数据分析工具包,SCP 与其高度兼容,可以无缝集成 Seurat 的功能。
4.2 Scanpy
Scanpy 是 Python 中的一个单细胞数据分析库,SCP 通过 reticulate 包与 Python 环境集成,可以使用 Scanpy 的功能。
4.3 Monocle
Monocle 是用于单细胞轨迹分析的工具包,SCP 提供了与 Monocle 的接口,可以方便地进行轨迹推断和动态特征分析。
通过以上步骤,你可以快速上手使用 SCP 进行单细胞数据分析,并结合其他生态项目进行更深入的研究。