Seurat分析单细胞标准流程

目录

一、数据下载

二、Setup the Seurat Object(设置Seurat对象)

1、安装R包

2、加载R包

3、读入数据

三、Standard pre-processing workflow(标准的预处理流程)

1、QC and selecting cells for further analysis(QC和细胞筛选)

常规质控标准

可视化QC指标

数据标准化

高变基因鉴定

数据归一化

2、线性降维

3、确定数据集的“维度”

JackStrawPlot

ElbowPlot

四、Cluster the cells(细胞聚类)

1、参数调整

2、非线性降维(UMAP/tSNE)

3、寻找差异基因

4、Marker gene可视化

VlnPlot

FeaturePlot

DoHeatmap

五、Assigning cell type identity to clusters(细胞类型鉴定)

1、鉴定方法

2、可视化

六、可视化方法拓展

1、RidgePlot

​编辑

2、VlnPlot

3、FeaturePlot

 4、DotPlot

5、DoHeatmap

6、FeaturePlot(样本间比较)

7、VlnPlot(样本间比较)

8、DotPlot(样本间比较

一、数据下载

我们将分析从10X Genomics免费提供的外周血单个核细胞(PBMC)数据集。在Illumina NextSeq 500上测序了2700个单细胞。原始数据可使用下方链接下载:

https://cf.10xgenomics.com/samples/cell/pbmc3k/pbmc3k_filtered_gene_bc_matrices.tar.gz

二、Setup the Seurat Object(设置Seurat对象)

1、安装R包

install.packages("Seurat")
install.packages("dplyr")
install.packages("patchwork")

2、加载R包

library(dplyr)
library(Seurat)
library(patchwork)

3、读入数据


# Load the PBMC dataset(导入数据)
pbmc.data <- Read10X(data.dir = "../data/pbmc3k/filtered_gene_bc_matrices/hg19/")
# Initialize the Seurat object with the raw (non-normalized data)(创建Seurat对象).
pbmc <- CreateSeuratObject(counts = pbmc.data, project = "pbmc3k", min.cells = 3, min.features = 200)
#过滤检测少于200个基因的细胞(min.features = 200)和少于3个细胞检测出的基因(min.cells = 3)
pbmc
#注释
pbmc <- CreateSeuratObject(counts = pbmc.data, project = "pbmc3k", min.cells = 3, min.features = 200)
counts:#未标准化的数据,如原始计数或TPMs
project:#设置Seurat对象的项目名称
min.cells:#包含至少在这些细胞检测到的features。
min.features:#包含至少检测到这些features的细胞

三、Standard pre-processing workflow(标准的预处理流程)

1、QC and selecting cells for further analysis(QC和细胞筛选)

常规质控标准

(1)在每个细胞中检测到的特异基因的数量:低质量的细胞或空液滴通常只有很少的基因,两个或多个细胞被捕获后可能表现出异常高的基因计数。

(2)细胞内检测到的分子总数(与特异基因密切相关)

(3)每个细胞中线粒体基因的占比:低质量细胞会出现异常的线粒体污染,使用PercentageFeatureSet()函数计算线粒体QC指标,同时,使用以MT-开头的所有基因集作为线粒体基因集

# The [[ operator can add columns to object metadata. This is a great place to stash QC stats
pbmc[["percent.mt"]] <- PercentageFeatureSet(pbmc, pattern = "^MT-")

可视化QC指标

# FeatureScatter is typically used to visualize feature-feature relationships, but can be used
# for anything calculated by the object, i.e. columns in object metadata, PC scores etc.

plot1 <- FeatureScatter(pbmc, feature1 = "nCount_RNA", feature2 = "percent.mt")
plot2 <- FeatureScatter(pbmc, feature1 = "nCount_RNA", feature2 = "nFeature_RNA")
plot1 + plot2

pbmc <- subset(pbmc, subset = nFeature_RNA > 200 & nFeature_RNA < 2500 & percent.mt < 5)
#过滤线粒体基因表达占比过高的细胞,和一些极值细胞(可以根据小提琴图判断,查看两端离群值)。

数据标准化

从数据集中删除不需要的单元格之后,下一步是规范化数据。默认情况下,我们使用全局缩放归一化方法“LogNormalize”,该方法通过总表达式对每个单元的特征表达式测量进行归一化,将其乘以一个比例因子(默认为10,000),然后对结果进行对数转换。

pbmc <- NormalizeData(pbmc, normalization.method = "LogNormalize", scale.factor = 10000)

为了清晰起见,在前面这行代码中(以及在以后的命令中),我们为函数调用中的某些参数提供默认值。然而,这不是必需的,同样的行为可以通过以下方式实现:

pbmc <- NormalizeData(pbmc)

高变基因鉴定

计算在数据集中显示高细胞间变异的特征子集(即,它们在一些细胞中高度表达,在另一些细胞中低表达)。在下游分析中,这些基因有助于突出单细胞数据集中的生物信号。这一过程在FindVariableFeatures()函数中实现。默认情况下,每个数据集选择2000个特征。这些将用于下游分析,如PCA。

pbmc <- FindVariableFeatures(pbmc, selection.method = "vst", nfeatures = 2000)

# Identify the 10 most highly variable genes(显示top10的高变基因,也可根据实际需要调整参数,如top20)
top10 <- head(VariableFeatures(pbmc), 10)

# plot variable features with and without labels
plot1 <- VariableFeaturePlot(pbmc)
plot2 <- LabelPoints(plot = plot1, points = top10, repel = TRUE)
plot1 + plot2

数据归一化

这是PCA降维前的一个标准出来步骤,改变每个基因的表达,使细胞间的平均表达为0,缩放每个基因的表达,使细胞间的方差为1(这一步骤在下游分析中具有同等的权重,因此高表达基因不会占主导地位)。

all.genes <- rownames(pbmc)
pbmc <- ScaleData(pbmc, features = all.genes)

2、线性降维

接下来我们对缩放后的数据进行PCA分析。默认情况下,只使用先前确定的变量特征作为输入,但如果希望选择不同的子集,可以使用feature

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值