2021-06-15 2482文献解读
scRNA-seq数据的一般分析流程是怎样的?
scRNA-seq数据分析会用到哪些工具?
scRNA-seq数据集通常包含由于不完全RNA捕获、PCR扩增偏差和/或特定于患者或样本的批次效应而产生的技术噪声,如何降低技术噪声对数据分析的影响?...
这些问题的答案都在今天分享的这篇综述里
来自美国的科研人员在《Nature Reviews Nephrology》发表综述文章,针对scRNA-seq分析所需的不同步骤进行广泛概述,包括数据的预处理和下游分析;讨论了在scRNA-seq数据分析的每个步骤中通常会遇到的挑战,并研究了为解决这些问题而开发的不同计算工具和方法,包括它们的优势和局限性;还探讨了实验设计的选择如何影响下游的数据分析。
scRNA-seq原始数据需要经过预处理才能用于评估基因表达的生物学相关变化。预处理将原始数据转换成更有用的格式,并解决与样本质量、广泛的基因表达水平和变异相关的问题。此外,如果同时分析多个数据集,这些步骤可以减少技术批次效应的影响。
scRNA-seq分析的第一步是将原始数据处理成计数矩阵。该矩阵总结了数据集中每个细胞中检测到的每个基因的分子数。计数矩阵作为其余分析步骤的输入,也是存储和共享基因表达信息的有效方法。
对于10X genomics scRNA-seq平台的用户,CellRanger为这一处理提供了一种便捷的方法,尽管其速度慢且需要大量内存 。CellRanger还运行基本的聚类和标记基因分析,可以用Loupe Cell Browser可视化。DropEst、Kallisto-BUStools、UMI-Tools、STARSolo和Alevin都是可选的reads处理方法,它们对运行时长和内存进行了改进,使用户能够处理其scRNA-seq运行时不必在计算基础设施上投入太多。此外,与CellRanger相比,DropEst、UMI-Tools和Kallisto-BUS Tools提供的对UMI和cell barcode错误的增强校正可改善基因表达估计。
数据集之间的QC阈值可能不同,一些探索性的数据分析(如每个细胞或基因UMIs分布的直方图)有助于每个数据集的阈值设置。在某些情况下,例如当下游分析中出现一组假的死亡或正在死亡的细胞时,在运行整个分析流程后修改这些阈值并重复分析后也会有所帮助(如下图)。
Seurat和SCANPY是scRNA-seq分析流程包,包括用于计算QC指标的函数,例如每个细胞表达的基因的比例、线粒体比例和总计数;用户决定用来过滤数据集中的基因和细胞的阈值。Scater还提供了一套用于计算关键QC指标的工具。
由于反转录效率、引物捕获效率和与折叠UMIs相关的错误等因素,每个细胞中捕获的RNA的比例会有所不同。因此,每个细胞中UMI或reads总量的差异可能是由技术因素而不是生物变化引起的。如果不归一化,UMI或reads总量的技术差异可能会主导下游分析。
在估计大小因子之前,scran包将具有相似表达模式的细胞汇集在一起,因此解决了由于细胞类型特异性基因表达或UMI计数而导致的标准化问题。然而,使用相同大小因子对高表达和低表达的基因进行标准化会导致低表达基因(如转录因子)的过校正,高表达基因如管家基因的低校正。SCnorm通过将依赖于总UMI或reads数的基因汇集起来,并计算每个集合中的大小因子来解决这个问题。sctransform(在Seurat包中实现)使用一个概率模型来计算总UMI或reads计数的影响,这也使它能够稳定基因方差,并识别过分散的基因。
基因表达水平变化很大,基因的平均表达(或大小)与其方差密切相关,这种效应称为均值-方差关系。
可以用来消除基因平均表达对基因方差影响的流程包括Seurat、Pagoda2和SCANPY。
基于MNN方法的出现使scRNA-seq用户能够分析和比较不同平台、患者或样本,甚至跨物种的样本,从而提高了scRNA-seq分析细胞类型和轨迹的能力。
预处理步骤完成后,包括降维、聚类和轨迹推断等下游分析将重点从数据中识别生物问题。降维涉及到将数据集转换为更紧凑、可能更易于解释的表示,以捕获变化的主要生物变异轴并提高聚类和轨迹推断的性能。聚类是指根据相似的基因表达模式将细胞分成若干组;这些组(也称为簇)通常对应于不同的生物细胞类型或状态。轨迹推断通常应用于在连续细胞状态中动态过渡的细胞。
线性方法。当两个变量的变化率相同(成正比)时,两个变量之间存在线性关系。scRNA-seq最常用的降维方法是主成分分析(PCA),它创建一个基因的线性组合,最好地捕捉数据中的方差。PCA在寻找方差最大维数的同时能够降低数据的维数,这使得它成为聚类前非常有用的降维工具。
ZIFA是PCA的一种变体,旨在明确地对scRNA-seq计数数据中预期的大量零值进行建模。
PCA的一个缺点是主成分本身很难从生物学角度解释。f-scLVM通过显式地将带注释的基因集建模为缩减的维度来解决这个可解释性问题 。因此,在运行f-scLVM后,每个降维对应一个注释基因集。Pagoda 和 Pagoda2通过在预先注释的基因集中运行PCA创建高度可解释的维度并选择数据集中显示显著差异的维度。NMF是另一种线性矩阵因式分解方法,主要通过尝试寻找构成系统基础的离散元件(如集合管或小管)来生成更多可解释维度的数据集。
非线性方法。基因之间的关系可能是高度非线性的,这会影响线性模型(如PCA)分析scRNA-seq数据的能力。因此,在某些情况下,能够生成数据集非线性转换的方法可以优于线性方法。具体而言,当数据集遵循一个连续的轨迹时,局部线性嵌入(LLE)和扩散图(Dmaps)被证明是有效的。
另一种降低非线性维度的方法是使用深度神经网络,它是一种应用迭代的非线性转换应用到数据集的模型。通过分层这些迭代变换,深层神经网络可以学习数据集的复杂特征,这使得它们能够用较少的维数来表示数据。scScope和DCA使用的神经网络可以比PCA等线性降维方法性能更好。scVI还利用神经网络建立了一个基因表达建模框架,使每个基因表达估计的不确定性得以量化,同时考虑批量效应和零通胀等技术效应。
对于那些想简单地降低数据的维度并继续进行聚类和可视化的用户,PCA是一个很好的默认方法。但更专门的方法,如f- scLVM或scVI,可以生成更易于解释或更忠实地捕获数据的非线性结构的低维嵌入。
零膨胀是高通量scRNA-seq方法的一个技术限制,受到不完全逆转录或RNA捕获的驱动。已经开发了几种方法来插补这些缺失的值。一类方法,包括MAGIC和knn - smooth,使用来自相邻单元格的信息来填充任何给定细胞的缺失值。另一类方法如通过表达恢复的单细胞分析,通过插补和降维聚类(CIDR)和scImpute利用概率模型和基因之间的关系来区分技术上的和生物上的dropout。然而,这些插补方法应该谨慎使用,因为它们在分析差异基因表达时可能会引入假阳性结果。因此,用户在分析低表达水平和高dropout水平的差异基因时应谨慎。
一般来说,大多数scRNA-seq数据集要么由离散的细胞类型组成,要么反映出连续的发育或分化轨迹。对于单个细胞可以被归入离散细胞类型的数据集,需要应用聚类来解决这些细胞类型。
k-means是一种简单和流行的聚类方法,它可以迭代地将细胞分配到簇中。然而,k-means聚类要求用户预先指定数据集中存在的细胞簇的数量,而在scRNA-seq数据集中确定生物相关的簇的数量仍然是一个挑战。处理这个问题的一个策略是产生比预计在数据集中发现的更多的类,然后迭代合并相邻的聚类或根据相似性阈值划分更大的类。CIDR, BackSPIN 和pcaReduce 使用了这种分层聚类方法。然后,用户可以选择最适合所需的类。对于具有许多不同细胞类型的极大型数据集(>100,000个细胞)来说,可能有必要进行多级聚类的层次分析。
对于大型数据集,k-means和分层聚类方法的运行速度都很慢,而且它们能够检测到的聚类类型有限。Seurat ,Pagoda2,SCANPY和CellRanger使用基于图的聚类算法,这种算法运行速度快,可以为较大的数据集生成生物学上相关的聚类。
其他方法包括SC3一致性聚类,它使用多种聚类方法的一致性来提高聚类精度。参考成分分析将单个细胞投射到由现有的bulk RNA-seq数据集定义的低维空间中,这对于高度异质性和难以解释的细胞群非常有用,如癌症中发现的细胞群。总的来说,像Leiden或Louvain这样的图形聚类方法具有很强的聚类性能和相当快的运行时间。
尽管聚类对于将细胞分组为离散的细胞类型很有用,但在许多情况下,细胞的基因表达模式在细胞状态之间转换时形成一个连续体。
轨迹推断的一个常见问题是,由于技术或生物噪声,生物上不同的细胞可能在这个连续体上彼此靠近,这种现象称为“短路”(short circuiting)。处理这个问题的一个有趣的方法是PAGA,在上述比较研究的大多数数据集上这是为数不多的表现良好的方法之一,同时保持了合理的计算运行时间。在一种类似于图聚类的方法中,PAGA生成数据的最近邻图,然后生成细胞分组,将细胞之间的连接比随机期望的多的组连接起来,以构建数据摘要图。Monocle3通过构建一个细胞之间的连接来构建细胞级图,其中在摘要图中未连接的细胞分组之间的任何连接都将被删除。
已经发展了许多方法来确定细胞在发育轨迹上的位置,但它们不能提供关于轨迹方向的信息。预测细胞转录方向的一种方法是估计RNA的速度(RNA velocity)。这种方法是基于对RNA分子是剪接的还是未剪接(即仍包含内含子序列的新生RNA)的评估。RNA velocity能够预测给定细胞未来的基因表达状态,并有助于确定。
在聚类和/或轨迹推断之后,下一步是生成细胞的二维或三维散点图,以可视化数据中的主要趋势和轨迹。
t-SNE是最流行的可视化方法之一,其能从视觉上分离出具有密切相关的细胞类型的复杂数据集。t-SNE目前可在Seurat、Pagoda2、SCANPY和CellRanger–Loupe Cell Browser 中实现。
在过去的几年里,UMAP已经超越了t-SNE,成为scRNA-seq数据的默认可视化方法。与图聚类相似,UMAP生成一个细胞的最近邻图,通过相似度的强弱对每个细胞-细胞连接进行加权;然后将该图嵌入两个维度。
SWNE使用NMF来降低数据的维度,然后将维度作为一个框架,将细胞投射到两个维度上,使用加权近邻图调整细胞的相对位置。这个框架还能使基因与细胞一起被可视化,为可视化增加生物背景和可解释性。SWNE比t-SNE表现得更好,在捕捉全局结构方面与UMAP相似,尽管它对局部结构的表示不如t-SNE和UMAP。
PHATE使用了一种基于扩散的距离度量,对局部和全局结构都很准确。PHATE似乎对具有发育轨迹的数据集表现得非常好,在捕捉全局和局部结构方面优于t-SNE和UMAP。
深度学习方法由于能够捕捉到数据中的非线性,也可以在二维嵌入中捕捉到高维数据的结构。scvis使用深度神经网络将高维数据浓缩到低维嵌入中,这比t-SNE(以分类精度衡量)能获得更好的细胞类型分离(捕捉局部结构的能力),以及更快的运行时间。其他基于深度学习的方法,如scScope、DCA和scVI也可以用来对高维数据进行二维编码。
对于轨迹推断,用于可视化的方法,例如UMAP、Dmaps和LLE,通常可以作为构建轨迹图的基础。UMAP是一个非常有用的默认方法,它忠实地可视化大多数数据集,并且比t-SNE或SWNE更少的参数调整就可以很好地工作。
通常,scRNA-seq分析中最耗时的步骤是识别数据集中的生物细胞类型。这种细胞类型注释的标准流程是找到每个簇中唯一表达的基因,并将这些基因与典型细胞类型标记列表进行匹配。Seurat、Pagoda2、SCANPY和Loupe Cell Browser中都有标记基因发现和可视化的工具。对标记基因发现方法的评估发现,大多数bluk RNA-seq开发的方法,如edgeR和limma,与scRNA-seq特定的方法表现一样好。尽管如此,相对于默认方法Seurat和Pagoda2,Wilcoxon的性能相对较好。
目前细胞类型注释通常使用自动分类和手动分类两种方式。其中手动检查标记基因列表可能非常耗时,并且需要对所研究的生物系统有一定的了解。因此,需要生物学家和生物信息学家之间的密切合作。而自动分类的方法即将单个细胞或类匹配到单个细胞或bulk 参考RNA-seq数据集,用于细胞类型的自动分类。对这些自动分类方法的基准分析发现,表现最好的方法是支持向量机(一种常见的机器学习分类器)。该分析还发现,使用先前已知的典型标记基因集的方法(如Garnett)并不优于无偏的方法。其他自动细胞类型注释方法包括scmap以及scPred。scmap使用与参考数据集的相关性和基于机器学习的特征选择方法对scRNA-seq集群进行分类,scPred使用降维和分类的组合。
数据集成方法(如Seurat、CONOS和Scanorama等)也可提供细胞类型的自动分类。这些方法跨数据集查找MNN,这使它们能够无需预先设置细胞类型标签,根据参考数据集的标签对数据集中的细胞类型进行分类。
虽然自动细胞类型注释方法很方便,但它们需要现有的参考scRNA-seq数据集。如果一个数据集包含新的细胞类型或细胞状态,仍然需要用标记基因进行手工注释。值得注意的是,即使有了参考数据集,人工检查标记基因对于验证所确定的细胞类型也是至关重要的。
实验设计会对分析产生重大影响。如果要收集和分析多个生物样本,最好对每个样本的细胞进行标记以允许多路复用,使用细胞散列等方法,然后在相同的 scRNA-seq 运行中进行分析。例如,在分析来自五个不同病人的肾脏样本时,在三次scRNA-seq运行中,每次运行最好包含来自每个病人的标记细胞。这种方法能够区分样本的特定效应和实验批次效应,如果样本来自病例对照研究,这一点尤其关键。例如,当比较基因敲除小鼠和野生型对照组时,来自两种类型小鼠的细胞最好在同一实验中运行。组合索引方法为这种方法提供了便利,因为在第一轮条形码过程中,不同样本的细胞可以被放置在不同的孔中。对于基于液滴的方法,某种形式的样品特异性细胞标签是必要的,以确定细胞的样品来源。然而,在同一实验批次中收集所有样品进行处理并不总是可能的,特别是对于跨越不同条件和/或时间点的动物实验,或在临床过程中收集的病人样品。
scRNA-seq方法的选择也对每个细胞捕获的分子数量和分析的细胞总数有影响。一般来说,组合索引方法比基于液滴的方法在每个细胞中捕获的UMI更少,这可能会影响它们解决一些密切相关的细胞亚型的能力。然而,组合索引方法可以在每个实验中捕获更多的细胞,有可能使稀有细胞群的识别成为可能。对于所有这些方法,用户通常可以控制加载到scRNA-seq平台的细胞数量。加载更多的细胞可以提高通量,但代价是可能会增加cell doublets。
组织解离方法的选择也会对可用于分析的细胞类型产生重大影响。一个关键的选择是是否将样品解离成单细胞或单细胞核。单个细胞的解离已被广泛地应用于新鲜组织样品。对于冷冻组织,单核分离和测序是一个更可行的选择。这两种类型的方案似乎都有其特定的偏向,尽管对于某些样本类型,如人类神经元,只有单核分离被证明效果良好。单核方法的一个局限性是,它们通常导致每个细胞捕获的分子较少,因为大多数RNA都在细胞质中。然而,仅从细胞核中捕获的信息往往足以对细胞类型和亚型进行准确分类。
scRNA-seq技术的进步导致了数据集规模和复杂性的增加。作为回应,一个计算方法的生态系统已经被开发出来,以应对分析这些数据集的挑战。基于MNNs识别的方法成功地整合了不同患者、条件和技术的数据集,解决了scRNA-seq数据中批次效应的关键问题。此外,已经开发了一些方法来模拟细胞轨迹和识别细胞集群。然而,剩下的一个限制是,大多数聚类方法需要用户指定聚类的数量,而为一个特定的数据集找到最佳的聚类数量是具有挑战性的。第二个限制是,使用标记基因手动注释细胞类型是非常耗时的。幸运的是,新的自动和半自动的细胞类型分类方法正在被开发出来以解决这个问题,尽管新的细胞类型和状态仍然需要手工注释。
整合样本中数据集的能力以及最新的scRNA-seq方法增加的通量,将提高我们解析细胞亚型和发现稀有细胞类型的能力。此外,许多新方法,尤其是用于低级数据预处理的方法,考虑到内存和中央处理单元的使用情况,这是至关重要的,因为单细胞数据集的大小持续增加。这些计算方法的进一步发展将有助于研究人员挖掘更多的生物学见解。尽管计算方法取得了这些进步,但仍需要通过测试多个生物学重复或进行其他实验(例如免疫染色或RNA-FISH)来验证任何计算结果。
多组学方法的出现将需要一套新的工具,可以将不同细胞参数的数据联系起来,如蛋白质表达或表观遗传数据,以提供额外的生物学洞察力。例如,分析基因表达与增强子和/或启动子可及性之间的关系,可能会勾勒出细胞类型特定的基因调控图,最大限度地发挥scRNA-seq数据集的效用。
参考文献
Wu Y, Zhang K. Tools for the analysis of high-dimensional single-cell RNA sequencing data[J]. Nature Reviews Nephrology, 2020, 16(7): 408-421.
图片均来源于参考文献,如有侵权请联系删除。