完整的单细胞分析通用流程——质控

kuaidi.ping-jia.net  作者:佚名   更新日期:2024-07-23

scRNA-seq数据中的低质量文库可能有多种来源,例如解离过程中的细胞损伤或文库制备失败(例如无效的逆转录或PCR扩增)。这些通常表现为总计数低,表达的基因很少,线粒体或spike-in比例高的“细胞”。这些低质量的库是有问题的,因为它们可能导致下游分析中的误导性结果:

1.它们形成了自己独特的细胞群,使对结果的解释变得复杂。最明显的原因是细胞损伤后线粒体比例增加或核RNA富集。在最坏的情况下,由不同细胞类型产生的低质量文库可以基于损伤诱导表达谱中的相似性聚集在一起,从而在其他不同亚群之间形成人为的中间状态或轨迹。此外,由于转换后平均值的变化,非常小的库可以形成自己的集群。
2.他们在方差估计或主成分分析过程中扭曲了集群异质性的特征。前几个主要成分将捕获质量差异而不是生物学差异,从而降低降维效果。同样,差异最大的基因将由低质量细胞与高质量细胞之间的差异驱动。最明显的例子:计数非常低的低质量文库,其中归一化放大了那些库中恰好具有非零计数的基因的表观变异。
3.它们包含的基因似乎由于主动缩放以针对小文库进行标准化而被强烈“上调”。这对于污染的以低但恒定水平存在于所有文库中的转录本(例如,来自环境溶液)最成问题。在低质量文库中增加的缩放比例会以较大的标准化表达值将这些转录物的计数转换为少量,从而导致与其他细胞相比明显的上调。这可能会产生误导,因为受影响的基因通常具有生物学敏感性,但实际上在另一个亚群中表达。
为了避免(或至少减轻)这些问题,我们需要在分析开始时删除这些细胞。此步骤通常称为细胞层面的质量控制(QC)。 (这里我们将互换使用“库”和“细胞”,尽管在处理基于液滴的数据时他们的区别将变得很重要。)我们将演示使用A. T. L. Lun等人的小型scRNA-seq数据集。 该版本没有事先进行质量控制,因此我们可以应用。

我们使用几种常见的QC指标,根据表达谱来鉴定低质量的细胞。这些指标将在下面针对SMART-seq2数据的reads进行质控,但相同的过程适用于由其他技术(如MARS-seq和基于液滴的方法)生成的UMI数据。

1.库大小定义为每个细胞的所有相关feature的总计数之和。在这里,我们将相关feature视为内源基因。具有小文库的细胞质量低下,因为在文库制备过程中某个时刻由于细胞裂解或无效的cDNA捕获和扩增导致RNA丢失。
2.每个细胞中表达feature的数量定义为该细胞计数为非零的内源基因的数量。由于尚未成功捕获多样化的转录物种群,任何具有很少表达基因的细胞都可能质量较差。
3.计算 “映射到spike-in转录本的reads数量” 相对于 “每个细胞所有feature(包括spike-in)reads的总数” 的比例。由于应该向每个细胞中添加相同量的spike-in RNA,因此spike-in计数的任何富集都是内源RNA丢失的征兆。因此,高比例表明劣质细胞,可能由于部分细胞裂解或解离过程中的RNA降解而丢失了内源RNA。

或者,有的人可能更喜欢使用 addPerCellQC() 函数。 这将计算每个细胞的QC统计信息并将其附加到SingleCellExperiment对象的 colData 中,从而使我们能够将所有相关信息保留在单个对象中,以供以后处理。

此处的关键假设是QC指标与每个细胞的生物学状态无关。 差异(例如,低文库大小,高线粒体比例)被认为是由技术因素而不是生物学过程驱动的,这意味着随后去除的细胞不会在下游分析中歪曲生物学过程。 严重违反此假设可能会导致细胞类型丢失,例如该实验体系本身具有较低的RNA含量或大量的线粒体。 我们可以使用其他诊断工具来检查此类现象(后续高级分析中讲解)。

识别低质量单元的最简单方法是在QC指标上应用阈值。 例如,如果库大小小于100,000reads,我们可能会认为这些单元的质量较低; 表达少于5,000个基因; spike-in率超过10%; 或线粒体比例超过10%。

虽然简单,但此策略需要大量经验才能确定每种实验方案和生物系统的合适阈值。 基于reads计数的数据的阈值根本不适用于基于UMI的数据,反之亦然。 线粒体活性或总RNA含量的差异要求分别针对不同的生物系统不断调整线粒体阈值和spike-in阈值。 确实,即使使用相同的方法和系统,由于cDNA捕获效率和每细胞测序深度的差异,适当的阈值也可能因运行而异。

为了获得合适的阈值,我们假设大多数数据集由高质量细胞组成。然后,我们根据所有细胞中每个指标的中位数的中位数绝对偏差(MAD),确定对于各种QC指标而言异常的细胞。具体来说,如果某个值在“问题”方向上距离中位数多于3个MAD,则认为该值是异常值。这种过滤器将保留遵循正态分布的99%的非异常值。

对于416B数据,我们确定对数转换的库大小比中位数低3个MAD的细胞。对数转换用 type =“ lower” 时以较小的值提高分辨率。具体而言,它保证阈值不是负值,这对于非负矩阵而言将毫无意义。此外,文库大小的分布表现出较重的右尾并不罕见。对数转换可避免MAD膨胀,从而可能损害左尾的异常检测。 (更一般而言,它证明上述99%的理由是合理的。)

我们对经对数转化的表达基因进行相同的操作

isOutlier() 还会在输出向量的属性中返回每个指标的确切过滤阈值。 这些对于检查自动选择的阈值是否合适非常有用。

我们为具有相同功能的基于比例的指标识别异常值。 这些分布经常显示出较重的右尾,但是与前两个指标不同,正是右尾本身包含了假定的低质量细胞。 因此,我们不执行任何变换来缩小尾巴-而是希望将尾巴中的细胞识别为较大的离群值。 (虽然理论上有可能获得高于100%的毫无意义的阈值,但这很少见,因此不会引起实际关注。)

对于这些指标中的任何一个异常的细胞都被认为质量低下并被丢弃。

或者,可以使用 quickPerCellQC() 函数将整个过程一步完成。

使用此策略,阈值可适应给定指标的值分布的位置和分布。 这使得QC程序可以适应测序深度,cDNA捕获效率,线粒体含量等方面的变化,而无需任何用户干预或事先经验。 但是,它确实需要一些假设,下面将对其进行详细讨论。

离群检测假定大多数细胞具有可接受的质量。这通常是合理的,并且在某些情况下可以通过肉眼检查细胞是否完整(例如在微孔板上)进行实验支持。如果大多数的细胞质量(不可接受)低,则自适应阈值显然会失败,因为它们无法删除大多数细胞。当然,在旁观者眼中,可接受的与否是随情境改变的——例如,众所周知,神经元很难分解,而我们通常会在某个QC指标下将细胞保留在神经元scRNA-seq数据集的,而在更严格的条件下如胚胎干细胞这个QC指标是不可接受的。

前面提到的另一个假设是,质控指标与每个细胞的生物学状态无关。这在高度异质性细胞群体中最有可能被违反,其中某些细胞类型天然具有更少的总RNA或更多的线粒体。即使没有捕获或测序方面的任何技术问题,也可能将此类细胞视为异常值并删除。通过考虑QC指标中的生物变异性,MAD的使用在某种程度上减轻了该问题。异类种群在高质量细胞之间的指标应具有较高的可变性,从而增加了MAD并减少了错误删除特定细胞类型的机会(以降低去除低质量细胞的能力为代价)。

通常,这些假设是合理的,或者它们的违反对下游结论影响很小。尽管如此,在解释结果时记住它们还是有帮助的。

更复杂的研究可能涉及使用不同实验参数(例如测序深度)生成的细胞批次。在这种情况下,自适应策略应分别应用于每个批次。从包含多个批次样品的混合物分布中计算中位数和MAD几乎没有意义。例如,如果一个批次中的测序覆盖率比其他批次低,则它将拖低中位数并使MAD膨胀。这将降低自适应阈值对其他批次的适用性。

如果每个批次都由其自己的 SingleCellExperiment 表示,则 isOutlier() 函数可以直接应用于每个批次,如上所示。但是,如果所有批次中的细胞已合并到单个 SingleCellExperiment 中,则应该使用 batch = 参数来确保在每个批次中都识别出异常值。这允许 isOutlier() 适应批次之间质量控制指标的系统差异。

我们将再次使用416B数据集进行说明,该数据集包含两个实验因素-原始和癌基因诱导状态。我们将这些因素结合在一起,并通过 quickPerCellQC() 在 isOutlier() 的 batch = 参数中使用它。这将导致去除更多的细胞,因为(i)批次之间测序深度的系统差异和(ii)致癌基因诱导表达的基因数量差异不再使MAD膨胀。

也就是说, batch = 的使用包含一个更强的假设,即每个批次中的大多数单元都是高质量的。 如果整个批次失败,则异常检测将无法充当该批次的适当QC筛选器。 例如,Grun等人中有两个批次。人类胰腺数据集包含相当一部分推定的受损细胞,其ERCC含量高于其他批次(图1)。 这会使这些批次中的中位数和MAD膨胀,导致无法删除假定的低质量细胞。 在这种情况下,最好从其他批次中计算出一个共享的中位数和MAD,并使用这些估计值来为有问题的批次中的细胞获取适当的过滤阈值,如下所示。

为了确定有问题的批次,一个有用的经验法则是找到质量控制阈值与其他批次的阈值相比异常的批次。 这里的假设是,大多数批次由大多数高质量细胞组成,因此阈值应遵循“典型”批次中的某些单峰分布。 如果我们观察到一个批处理具有极高的阈值,我们可能会怀疑它包含大量会使每个批处理的MAD膨胀的低质量细胞。 我们在下面以Grun等人数据演示此过程。

如果我们不能假设大多数批次都包含大多数高质量细胞,那么所有猜测都将消失; 我们必须恢复选择任意阈值并希望达到最佳效果的方法。

另一种策略是基于每个细胞的QC指标来识别高维空间中的异常值。 我们使用来自 robustbase 的方法基于它们的QC指标来量化每个细胞的“异常”,然后使用 isOutlier() 来识别表现出异常高水平异常的低质量细胞。

这种方法和相关方法(例如基于PCA的异常检测和支持向量机)可以提供更高的能力,以区分低质量的细胞与高质量的细胞,因为它们可以利用许多QC指标中的模式。 但是,这需要付出一些可解释性的代价,因为删除给定细胞的原因可能并不总是很明显。

为了完整起见,我们注意到也可以从基因表达谱而非质量控制指标中识别异常值。 我们认为这是一种冒险的策略,因为它可以去除稀有细胞群中的高质量细胞。

检查QC指标的分布是个好习惯(图2),可以发现可能的问题。 在最理想的情况下,我们将看到正态分布可以证明离群值检测中使用的3 MAD阈值是合理的。 其他模型的细胞表明QC指标可能与某种生物学状态相关,有可能导致过滤过程中不同细胞类型的损失。 或细胞亚群的文库制备存在不一致,这在基于plate的实验方案中很常见。 然后,可以快速识别出任何指标的系统差值批次,以进行进一步的故障排除或彻底删除,就像上面的图1一样。

另一个有用的诊断方法是针对其他一些QC指标绘制线粒体计数比例。 目的是要确认没有总计数和线粒体计数都很高的细胞,以确保我们不会无意中去除代谢活跃的高质量细胞(例如肝细胞)。 我们证明了使用来自涉及老鼠大脑的更大实验的数据; 在这种情况下,我们在图3的右上角没有观察到任何可能与新陈代谢活跃且未受损的细胞相对应的点。

我们看到所有这些指标相互之间显示出较弱的相关性,大概是细胞损伤的共同潜在作用的体现。 相关性的弱点促使人们使用多种指标来捕获技术质量的不同方面。 当然,不利的一面是,这些指标还可能代表生物学的不同方面,增加了丢弃整个细胞类型的风险。

识别出低质量的细胞后,我们可以选择删除它们或对其进行标记。 删除是最简单的选项,可以通过按列设置 SingleCellExperiment 来实现。

质量控制期间最大的实际问题是是否会无意中丢弃整个细胞群。 由于QC指标永远不会完全独立于生物学状态,因此始终存在发生这种情况的风险。 我们可以通过寻找丢弃细胞和保留细胞之间基因表达的系统差异来判断细胞类型是否有丢失。 为了证明这一点,我们计算了416B数据集中废弃池和保留池的平均计数,并计算了池平均值之间的对数倍变化。

如果丢弃的池中富集了某种细胞类型,则应观察到相应标记基因的表达增加。 在图4中,丢弃池中没有明显的基因上调系统,这表明QC步骤并未无意间过滤掉416B数据集中的细胞类型。

为了进行比较,让我们考虑来自10X Genomics的PBMC数据集的QC步骤。 我们将对库大小应用任意固定的阈值来过滤细胞,而不是使用任何基于异常值的方法。 具体来说,我们会删除所有库大小小于500的库。

在图5中,废弃池中存在一个独特的种群,这是一组在丢失中强烈上调的基因。 这包括PF4,PPBP和SDPR,它们((扰流板警报!)表示存在被alt.discard丢弃的血小板群。

另一种选择是照这样标记低质量的细胞,并将其保留在下游分析中。 此处的目的是允许形成低质量细胞的群,然后在解释结果时识别并忽略这些群。 这种方法避免了丢弃质量控制指标值较差的细胞类型,从而为用户提供了机会来决定此类细胞的群是否代表真正的生物学状态。

缺点是它将QC的负担转移到了细胞群的解释上,这已经是scRNA-seq数据分析的瓶颈。确实,如果我们不相信QC指标,我们将不得不仅基于标记基因来区分真正的细胞类型和低质量的细胞,由于后者倾向于“表达”有趣的基因,因此这并不总是那么容易。保留低质量细胞也会损害方差建模的准确性,例如,需要使用更多的PC来抵消早期PC受低质量细胞和其他细胞之间的差异驱动的事实。

对于常规分析,我们建议默认执行清除操作,以避免低质量细胞引起的并发问题。这样一来,大多数群结构的特征都无需担心或至少不会担心其有效性。完成初始分析后,如果对丢弃的细胞类型有任何疑问,可以在仅标记低质量细胞的情况下进行更彻底的重新分析。这样可以恢复具有低RNA含量,高线粒体比例等的细胞类型,仅在初始分析中“填补空白”的情况下才需要对其进行解释。



单细胞分析是指从单个细胞层面对基因表达、蛋白质活动或其他生物分子进行研究的技术。这种分析方法可以揭示细胞异质性和个体细胞之间的细微差异。单细胞分析的一般流程如下。
1.样本准备:
首先要通过组织解离或流式细胞分选等方法获取单细胞悬液。
2.单细胞捕获与逆转录:
使用微流控芯片、荧光激活细胞分选(FACS)或微滴技术等方法捕获单个细胞,并将细胞内的mRNA转录成cDNA。
3.文库构建与测序:
利用cDNA进行文库构建,随后进行高通量测序。
4.质量控制(QC):
细胞质量控制:通过细胞大小、形态、捕获完整性等指标排除死细胞或损伤细胞。
RNA质量控制:评估RNA的完整性和浓度,确保mRNA的质量适合后续步骤。
序列质量控制:通过软件工具检查测序数据的质量,去除低质量的读段(reads)、接头序列和污染物。
数据质量控制:排除双倍体细胞、空滴(未捕获细胞的微滴)或因技术原因而表达量过低的基因。

5.数据分析:
使用生物信息学工具进行数据归一化、细胞类型鉴定、基因表达量分析等。
6.验证与解释:
对感兴趣的细胞亚群或基因表达模式进行实验验证,如使用流式细胞术、免疫荧光标记等方法。
每一个步骤都需要严格的质量控制来确保最终结果的准确性和可重复性。尤其是在QC步骤中,对细胞质量、RNA质量和序列质量的控制是至关重要的,它直接影响着数据分析的准确性。

  • 完整的单细胞分析通用流程——质控
    答:我们使用来自 robustbase 的方法基于它们的QC指标来量化每个细胞的“异常”,然后使用 isOutlier() 来识别表现出异常高水平异常的低质量细胞。 这种方法和相关方法(例如基于PCA的异常检测和支持向量机)可以提供更高的能力,以区分低质量的细胞与高质量的细胞,因为它们可以利用许多QC指标中的模式。 但是,这需要付出一些可...
  • 单细胞RNA系列专题之一:单细胞RNA测序中质控之重要细节 (上篇)_百度...
    答:我们来看看单细胞实验的整体流程如下图,分析一下哪些环节会带来偏好性,以及如何发现和质控 。我们在做单细胞测序的时候,首先要做细胞分离。细胞分离必须要在短时间内完成,否则会影响到细胞的状态,甚至可能导致RNA从细胞中漏出。从组织中分离出细胞往往很困难,具体方法可以参考《Tissue Handling and Dis...
  • 单细胞RNA系列专题之一:单细胞RNA测序中质控之重要细节 (下篇)_百度...
    答:整个单细胞分析的核心其实就是确定cell types/ lineages。而在此之前的一步就是数据质控(QC, quanlity control)。我们在得到表达矩阵之后,会做Data normalization , 基因集筛选,批次效应的去除等工作;之后用PCA, t-SNE进行降维。如果在这一过程中发现了一些问题,我们会移除掉一些细胞,然后重新质控,...
  • 单细胞数据的导入与质控 - Seurat
    答:在进行过滤后,建议回过头来再看看指标,确保你的数据符合你的预期,对下游分析有好处。我们将保存筛选后的细胞对象用于聚类 (clustering) 和标记识别 (marker identification),将过滤以后的Seurat数据创建为.RData对象
  • 使用scater包进行单细胞测序分析(二):数据质量控制
    答:对于细胞水平上的质控,我们可以查看参照基因(feature controls)的表达量比上总基因表达量的百分比,如果一个基因在总基因表达量上的比例多,而在参照基因(如ERCC)里少,就是正常的细胞,反之则不正常。plotScater 函数会从表达量最高的基因(默认为500个)中选一部分,然后从高到低累加,看看它们对...
  • 单细胞ATAC亚群分析
    答:与单细胞转录组类似,单细胞ATAC的分析流程也主要包括细胞质控、peaks标准化及其降维分群、marker基因的鉴定等几个步骤。常用的单细胞ATAC分析流程软件包含 cell-ranger-atac、Signac和ArchR等。单细胞ATAC的质控点一般包含以下几个方面:样本重复(biological replicates),bulkATAC vs scATAC的相关性、fragment...
  • 单细胞测序分析: Seurat 使用教程
    答:Peripheral Blood Mononuclear Cells (PBMC) 是 10X Genomics dataset page 提供的一个数据,包含2700个单细胞,出自Illumina NextSeq 500平台。 PBMCs是来自健康供体具有相对少量RNA(around 1pg RNA/cell)的原代细胞。在Illumina NextSeq 500平台,检测到2700个单细胞,每个细胞获得69000 reads。 matrix.mtx:matrix.mtx 是...
  • 单细胞转录组测序知识一隅
    答:具体的实验流程如图所示,最终含有细胞的油滴占所有油滴比例大约5%,更好地保证了含有细胞的油滴里面只有1个细胞,一个包含细胞的油滴内就是一个单细胞scRNA-Seq。每个GEMs内包含独特的10X barcode用于区分不同的单细胞;每个GEMs内相同的10X barcode与不同的UMI组成用于区分不同转录本的Gel Bead poly(...
  • 【分析工具】液滴微流控获取单细胞及Drop-seq_tools分析流程
    答:  不同的实验方案生成的单细胞数据,分析上整体差别不大,无外乎就是原始数据过滤质控,然后比对到基因组上,根据UMI及细胞barcode实现基因   Drop-seq_tools配合Picardtools,samtools STAR等工具实现对fq bam sam 等文件处理。流程首先将构建参考基因组文件夹,对物种的参考...
  • 深度好文 | 单细胞RNA测序技术简介
    答:        单细胞测序的数据分析主要包括以下三步:(i)计算基因表达矩阵。根据测序reads上的barcode和UMI标签将reads比对到特定细胞的特定基因上并计数,以获得每个细胞中不同基因的表达量;(ii)质控。去除基因表达量很少和线粒体DNA含量较高的细胞;...