9.单细胞 RNA-seq:聚类分析

如题所述

第1个回答  2022-07-15

现在我们已经整合了高质量的细胞,我们想知道我们的细胞群中存在的不同细胞类型。

目标:

挑战:

建议:

在开始本课程之前,让我们命名为 clustering.R .

首先加载我们需要的所有库。

为了克服 scRNA-seq 数据的任何单个基因表达中的广泛技术噪音, Seurat 根据来自整合的最可变基因的表达的 PCA 分数将细胞分配到亚群中 ,每个 PC 基本上代表一个结合相关基因组信息“metagene”。因此,确定要包含在分群步骤中包含多少PC 数量对于确保我们捕获 数据集中存在的大部分变异 细胞类型 非常重要。

在决定下游分群分析要包括哪些PC之前,先探索 PC 很有用。

(a) 探索 PC 的一种方法是使用热图来可视化选择 PC 的变异最大的基因,其中 基因和细胞按 PCA 分数排序 。这里的想法是查看 PC ,并确定驱动它们的基因是否对区分不同的细胞类型有意义。

cells 参数指定用于绘图的PCA得分负向最低或正向最高的细胞数量。我们的想法是,我们正在寻找一个PC,它的热图开始看起来更“模糊”,也就是说,基因组之间的区别不是那么明显。

如果我们想探索大量 PC,这种方法可能会很慢并且难以可视化单个基因。同样,为了探索大量 PC,我们可以通过驱动 PC 的 PCA 分数显示出前 10 个(或更多)阳性和阴性基因。

(b) elbow plot 是确定使用多少个PC进行分群的另一种有用的方法,这样我们就可以捕获数据中的大部分变化。elbow plot 直观地显示了每个PC的标准偏差,我们要找的就是标准偏差开始趋于平稳的位置。本质上, elbow 出现的位置通常是识别大部分变化的阈值 。但是,这种方法可能相当的主观。

我们使用排名前40位的PC绘制一张elbow plot

虽然上述 2 种方法在 Seurat 以前的方法中使用得更多,用于对可变基因进行标准化和识别,但它们不再像以前那样重要。这是因为 SCTransform 方法比旧方法更准确

为什么选择 PC 对旧方法更重要?

较旧的方法将一些技术变异来源纳入一些较高的 PC,因此 PC 的选择更为重要。SCTransform 更好地估计了方差,并且在较高的 PC 中经常不包括这些技术变化的来源。

理论上,使用 SCTransform,我们选择的 PC 越多,在执行聚类时考虑的变化就越多,但执行聚类需要更长的时间。因此,对于此分析,我们将使用 前40个PC 来生成集群。

Seurat 使用基于图的聚类方法,该方法使用 K 最近邻 (KNN) (默认情况下)将细胞嵌入到图结构中,并在具有相似基因表达模式的细胞之间绘制边。然后,它尝试将该图划分为高度互连的“准集团”或“社区”[ Seurat - 引导聚类教程 ]。 SVI 生物信息学和细胞基因组学实验室课程中 提供了对聚类方法的深入描述。

我们使用 FindClusters() 函数来执行基于图的聚类。这 resolution 是一个重要的参数,它设置了下游聚类的“精度”,需要针对每个单独的实验进行优化。对于 3,000 - 5,000 个单元格的数据集, resolution 介于 0.4 - 1.4 的集合之间,通常会产生良好的聚类。增加的分辨率值会导致更多的聚类,这通常是较大的数据集所使用。

该 FindClusters() 函数允许我们输入一系列分辨率,并将计算聚类的“精度”。这对于测试哪种分辨率适用于当前非常有用,而无需为每个分辨率都运行一次。

如果我们查看 Seurat 对象 ( [email protected] )的数据,就会发现计算出的每个不同分辨率都有一个单独的列。

要选择一个分辨率作为开始,我们通常会选择范围中间的值,例如 0.6 或 0.8。我们将从 0.8 的分辨率开始,通过使用该 Idents() 函数选择分群的标准。

为了可视化细胞簇,有一些不同的降维技术可能会有所帮助。最流行的方法包括 t 分布随机邻域嵌入 (t-SNE) 和 均匀流形近似和投影 (UMAP) 技术。

这两种方法都旨在将高维空间中具有相似局部邻域的细胞放在低维空间中。这些方法将要求您输入用于可视化的 PCA 维度的数量,我们 建议使用相同数量的 PC 作为聚类分析的输入 。在这里,我们将继续使用 UMAP 方法 来可视化集群。

探索不同的分辨率 也很有用。它将让您快速了解集群将如何根据分辨率参数发生变化。例如,让我们切换到 0.4 的分辨率:

您的 UMAP 图与上面的图相比如何?

与本课程中的图像相比,您的集群的外观可能存在一些差异。特别是, 您可能会看到 cluster 的标签有所不同 。这是软件包版本(主要是 Seurat 依赖项)的轻微变化的结果。

如果您的集群看起来与课程中的相同,就继续下一部分。

如果您的集群看起来与我们在课程中看到的不同 ,请按照下面提供的说明进行操作。

在您的 data 文件夹中,您将看到一个名为 additional_data . 它包含我们为该类创建的 seurat_integrated 对象。

练习

加载 seurat_integrated.RData.bz 后,查看不同分辨率(0.4、0.6、0.8、1.0、1.4)下的亚群分类数。对于每个分辨率,绘制相应的 UMAP 并报告您观察到的集群数量。您认为哪个分辨率有意义?

我们现在将继续使用 0.8 分辨率来检查预期细胞类型的质量控制指标和已知标记。再次绘制 UMAP 以确保您的图像现在(或仍然)与您在课程中看到的相匹配: