Closed ixxmu closed 7 months ago
学完#单细胞转录组基础10讲之后,就开始读文献——单细胞入门必读5篇cns综述对单细胞基本分析流程有个更详细的了解啦!
因为文献里面的内容很多,所以就是可能读一篇整理一篇的内容。首先是单细胞RNA-seq数据分析最佳实践,因为它也出现在单细胞转录组基础10讲里面。
推文里所有资料来源于单细胞天地的《单细胞RNA-seq数据分析最佳实践》合集。
推文内容非常详细,建议还是读一下原推文,笔记整理的肯定不够完善。
文章详细介绍了典型的单细胞 RNA-seq 数据分析步骤,包括预处理(质量控制、标准化、数据校正、特征选择和降维)以及细胞及基因水平的下游分析。
根据独立比较研究为这些步骤制定了当前(2019年)最佳实践建议,但是并没有标准化分析流程,而是概述了当前的最佳实践和独立于编程语言的通用工具。
分析方法不断增加和数据集规模爆炸性增长
技术方面——scRNA-seq 数据的分析工具用各种编程语言,最突出的是 R 和 Python
Seurat、Scater 或 Scanpy等热门平台提供了开发流程的集成环境,且包含大型分析工具。但是,这些平台仅限于使用各自编程语言开发的工具。
典型的工作流程包括:单细胞解离、单细胞分离、文库构建和测序。
单细胞悬浮液的制备作为第一步,是在一个被称为单细胞解离的过程中产生的,其中组织被消化。为分析每个细胞中的 mRNA,必须分离细胞。
单细胞分离:基于平板的技术将细胞隔离到平板上的孔中,但基于液滴的方法依赖于在自己的微流体液滴中捕获每个细胞。在这两种情况下,都可能发生错误,导致多个细胞被捕获在一起(doublets or multiplets)、非活细胞被捕获或完全没有细胞被捕获(空液滴/孔)形成空滴的情况尤其常见,因为基于液滴的方法依靠低浓度的输入细胞流动来控制双联体率。
文库构建:胞内 mRNA 被捕获、反转录为 cDNA 分子并扩增的过程称为文库构建。当细胞隔离进行这一过程时,每个细胞的 mRNA 可以被一个孔或滴特定的细胞条形码标记。许多实验方案也用唯一分子标识符 (UMI) 标记捕获的分子。
单细胞测序:构建好文库后,使用细胞条形码进行标记,并根据协议进行UMIs标记。这些库汇集在一起(multiplexed)用于测序。序列产生reads数据,这些数据经过质量控制,再准备阶段根据指定的条形码(demultiplexing)和reads比对区分细胞。对于基于umi的协议,reads数据可以被进一步解复用以产生捕获的mRNA分子计数(count data)。
对测序仪生成的原始数据进行处理,以获得分子计数(count 矩阵)或读数(reads矩阵)的矩阵,这取决于是否在单细胞文库构建方案中纳入了独特的分子标识符 ( unique molecular identifiers ,UMI)
Cell Ranger 、indrops 、SEQC 或 zUMIs等原始数据处理流程负责reads质量控制 (QC),为其细胞barcode和 mRNA 来源分子分配reads、基因组比对和定量。得到的reads或计数矩阵包含barcode x 转录本数量的高纬数据。
使用barcode代替细胞,因为所有reads均为分配给相同的barcode可能与来自同一细胞的reads不一致。一个barcode可能错误地标记多个细胞(双联体)或可能不标记任何细胞(空滴/孔)。
在分析单细胞基因表达数据之前,必须确保所有的细胞barcode数据都对应于活细胞。
细胞 QC 通常基于三个 QC 变量进行:
每个barcode的计数数量(count depth )
每个barcode的基因数量
每个barcode的线粒体基因计数分数
检查这些 QC 变量的分布,以确定是否存在通过阈值处理过滤掉的离群峰。异常barcode可能对应于死细胞、膜破损的细胞或双联体。
单独考虑这三个细胞 QC 变量中的任何一个都可能导致对细胞信号的误解。因此,当单变量阈值决策时,应联合考虑细胞 QC 变量,这些阈值应尽可能设置为允许的,以避免无意中过滤掉活细胞群。考虑到多变量细胞 QC 的依赖性,筛选模型可能提供更敏感的 QC 选项。
细胞 QC 步骤也必须在转录本水平上进行。原始计数基质通常超过 20,000 个基因。通过过滤掉在少数细胞中不表达的基因,可以大幅减少这一数量。设置此阈值的一个准则是使用最小cell群,并留下一些dropout 效应(dropout effects. )的余地。阈值的选择应根据数据集中的细胞数量和预期的下游分析进行调整。
在分析数据时,可能需要多次重新审查质量控制参数。通常,从允许的质控阈值开始,在执行更严格的质控之前研究这些阈值的影响是有益的。
计数矩阵中的每个计数代表细胞 mRNA 分子的成功捕获、逆转录和测序,但是每个步骤固有的变异性,相同细胞的计数深度结果却可能不同。因此,当基于计数数据比较细胞间的基因表达时,差异可能仅由采样效应( sampling effects)引起,可以通过缩放计数数据以获得正确的细胞间相对基因表达丰度来解决这一问题。
1. CPM、高计数过滤 CPM 和 scran 使用线性、全局缩放标准化计数数据
CPM 标准化假设数据集中的所有细胞最初包含相同数量的 mRNA 分子,计数深度差异仅由于取样产生。
Weinreb et al (2018) 使用了 CPM 的简单延伸,计算它们的大小因子时,排除了任何细胞中占总计数至少 5% 的基因。考虑到了少数高表达基因的分子计数变异性。
基于 Scran 合并的尺寸因素估计(pooling-based size factor estimation)方法允许更多的细胞异质性 (Lun et al,2016a)。细胞合并后,根据基因的线性回归估算大小因子,以避免技术脱落效应。将变异性限制在细胞间差异表达基因的 50% 以下,并且在独立比较中始终是性能最佳的标准化方法。
2. 非线性归一化方法,可解释更复杂的异质性
Mayer et al (2018) 使用技术变量(如测序深度和每个基因的计数数量)拟合负二项模型,以拟合模型参数,模型拟合的残差作为基因表达的标准化定量。可以将技术和生物数据校正(例如批次校正或细胞周期效应校正)与计数深度归一化相结合。
细胞计数数据可以归一化,使细胞间具有可比性,并且基因计数也可以按比例调整,以改善基因间的比较。基因归一化构成基因计数的标度,使其均值和单位变异(z值)为零。这种比例的变化影响了所有的基因下游分析的权重。
归一化后,数据矩阵通常是对数 (+ 1) 转换的。这种转变有三个重要作用:
对数转换的表达值之间的距离代表对数倍数变化,这是衡量表达变化的经典方式。
对数转换减轻(但不消除)单细胞数据中的均值方差关系 (Brennecke et al,2013)。
对数转换降低了数据的偏斜度,以适用于假设数据呈正态分布的下游分析工具。
综上所述的标准化试图消除计数采样的影响。但是,归一化数据仍可能包含不希望的变异性。所以需要对数据进一步的校正,针对技术和生物学变量,如批次、脱落或细胞周期效应。
消除生物效应
最常见的生物数据校正是去除细胞周期对转录组的影响,可通过 Scanpy 和 Seurat 平台 或具有更复杂混合模型(如 scLVM或 fscLVM)的专门包装中实施的细胞周期评分的简单线性回归进行。
校正生物学效应数据之前,应考虑几个因素:
校正生物学变量并不总是有助于解读 scRNA-seq 数据。虽然去除细胞周期效应可改善发育轨迹的推断,但细胞周期信号也可提供生物学信息。
生物过程发生在同一生物体内,这些过程之间存在依赖性,所以纠正一个过程可能无意中掩盖另一个过程的信号。
细胞大小的变化解释了通常归因于细胞周期的转录组效应 (McDavid et al,2016),通过标准化校正细胞大小,或专用工具如 cgCorrect (Blasi et al,2017),也部分校正了 scRNA-seq 数据中的细胞周期影响。
消除技术误差
单细胞数据中最显著的技术变量是计数深度和批次。标准化比例计数数据可以使细胞之间的基因计数相当,但计数深度效应通常保留在数据中。这种计数深度效应既可以是生物的,也可以是技术的。
归一化后的技术计数效应可能仍然存在,因为没有缩放方法可以推断由于采样不佳而未检测到的基因的表达值。回归出计数深度效应可以提高轨迹推理算法的性能,它依赖于找到cell之间的转换
当校正多个变量(例如,细胞周期和计数深度)时,应在一个步骤中对所有变量进行回归,以考虑变量之间的依赖性。
另一种基于回归的消除计数影响的策略是使用更严格的标准化过程,如下采样或非线性标准化方法。
这些方法可能特别适用于基于平板(plate-based )的 scRNA-seq 数据集,其中每个细胞计数深度的较大变化可以掩盖细胞之间的异质性。
批次效应和数据整合
批次效应
:当细胞以不同的分组处理时,可能发生批次效应。
批次效应可以由不同芯片上的细胞、不同测序泳道中的细胞或不同时间收获的细胞组成。
细胞经历的不同环境会对转录组的测量或转录组本身产生影响,产生的影响存在于多个层面:实验中的细胞组之间、在同一实验室进行的实验之间或来自不同实验室的数据集之间。
在相同的实验中校正样品或细胞之间的批次效应是经典的来自 bulk RNA-seq 的批次校正(Batch effects)。将这与多次实验的数据整合区分开来,称之为数据整合(data integration)。
虽然批效应通常使用线性方法校正,但一般使用非线性方法进行数据整合:
表达恢复
另一种类型的技术数据校正是表达恢复(也就是去噪或插补)。单细胞转录组的测量包含各种噪声,其中一个特别突出的方面是dropout。推断dropout事件,用合适的表达值替换这些零,减少数据集中的噪声,执行表达恢复可改善基因相关性估计
问题与建议
几种降低单细胞数据维度的方法:Feature selection, dimensionality reduction and visualization
1. 特征基因选择:Feature selection
scRNA-seq 数据集降维的第一步通常是特征选择。将筛选数据集仅保留可提供数据变异性信息的基因。
通常使用高度可变基因 (HVG) (Brennecke et al,2013)。根据任务和数据集的复杂性,通常选择 1,000 至 5,000 个 HVG 用于下游分析。
2. 降维:Dimensionality reduction
将表达式矩阵嵌入到一个低维空间中,目的是在尽可能少的维度中捕获数据中的底层结构。
这种方法的工作原理是单细胞 RNA-seq 数据本身就是低维的 (Heimberg et al,2016),细胞表达谱所在的生物流形可以用比基因数量少得多的维度来充分描述,通过降维去找出这些维度。
降维方法主要有两个目标:可视化和提取主要变化
可视化是尝试以二维或三维的方式对数据集进行最佳描述。这些缩小的尺寸用作散点图上的坐标,以获得数据的直观表示。
对于描述数据中存在的变异性,较高的组分变得不太重要。摘要技术可以通过找到数据的固有维数,将数据简化为其基本组成部分,因此有助于下游分析。
通过特征空间维度(基因表达载体)的线性或非线性组合减少维度。
两种流行的降维技术
是主成分分析 (PCA;Pearson,1901) 和扩散图(diffusion maps )
主成分分析PCA
主成分分析是一种线性方法,通过最大化每个进一步维度中捕获的残差来生成降维。尽管 PCA 并不像非线性方法那样能够捕获很少维度的数据结构,但它是目前许多可用的聚类或轨迹推断分析工具的基础。
PCA 通过其前 N 个主成分汇总数据集,其中 N 可以通过肘部启发式或基于置换测试的 jackstraw 方法
PCA 的简单线性的优点是在减少的维空间距离在这个空间的所有区域有一致的解释,所以可以将感兴趣的数量与主成分相关联来评估它们的重要性。
3. 可视化Visualization
scRNA-seq 可视化最常用的降维方法是 t 分布随机邻域嵌入(t-SNE)以及UMAP。
t-SNE 降维
以全局结构为代价来获取局部相似性,可能夸大细胞群体之间的差异,并忽略这些群体之间的潜在联系。因为 t-SNE 图可能显示不同数值的簇,所以另一个困难是选择其复杂度参数。
UMAP 和弹簧力导向布局算法 ForceAtlas2 可以说是底层拓扑的最佳近似值,该比较中 UMAP 的不同之处在于其扩展至大量细胞的速度和能力。UMAP 还可以在两个以上维度汇总数据。
问题与建议
我们建议根据数据集的复杂性选择1000到5000个高度可变的基因。
当基因表达值被归一化为零均值和单位方差时,或当模型拟合的残差被归一化表达值时,不能使用使用基因表达均值和方差的特征选择方法。因此,在选择HVGs之前,必须考虑要进行什么预处理。
应分别考虑降维方法进行总结和可视化。
推荐使用 UMAP 进行探索性可视化;使用 PCA 进行一般性总结;使用扩散图替代 PCA 进行轨迹推断总结。
具有 UMAP 的 PAGA 是可视化特别复杂数据集的合适替代方案。
预处理划分为 5 个数据处理阶段
:
原始数据
标准化数据
校正数据
特征选择数据
降维数据
这些数据处理阶段分为三个预处理层
:
测量数据
校正数据
缩减数据(降维)
这些处理层的顺序代表了 scRNA-seq 分析中的典型工作流程,也可以跳过某个处理层或者在处理阶段的顺序上有轻微的改变。例如,对于单批数据集,可能不需要进行数据校正。
图片中预处理阶段分为实测数据、校正数据和缩减数据 3 组。
将测量数据定义为原始数据和保留零结构的处理数据。
通过使用cell特定因子缩放计数数据,全局缩放规范化方法即使在 log (+ 1)转换之后也保留 0 表达值。
纠正不需要的变异性数据替代零表达值,校正后的数据层代表数据的最干净版本,是基础生物信号的最接近近似值。
最后的预处理层为缩减数据,该数据层强调数据的主要方面,可以使用简化的功能集进行描述。缩减数据用于需要数据总结(可视化、邻域图推理、聚类)的探索性方法和计算复杂的下游分析工具(轨迹推理)
单个基因的表达谱只能在基因空间中进行比较,在测量和校正数据中捕获,表达谱的比较可以通过可视化和统计学进行。
数据校正注意点
应该对不同的数据层进行可视化和统计比较。基因表达的目测检查,校正数据最为合适。如果提供原始数据进行可视化比较,则要求用户固有地理解数据中的偏倚,以解释结果,校正数据有助于这种解释。
基因表达的统计学比较在测量数据层上最合适,没有完美的数据校正方法可用于消噪、批次校正或其他变异来源的校正。
数据校正方法不可避免地对数据进行了过高或过低的校正,因此以一种非预期的方式改变了至少一些基因表达谱的方差。基因表达的统计检验依赖于评估背景方差,作为数据中噪声的无效模型。
由于数据校正倾向于减少背景变异,背景变异被数据校正方法过度校正的基因将更可能被评估为显著差异表达。
某些数据校正方法(例如 ComBat)将不符合实验设计的表达信号解释为噪声,随后从数据中删除。除了低估噪声外,这种实验设计信号的优化会导致高估效应量。
所以使用测量数据作为输入,而不是使用校正数据,构成了对差异试验更保守的方法。使用测量数据,在差异检验模型中可以并且应该考虑技术变量。
问题和建议
:
单细胞下游分析的方法被用于提取生物学见解并描述潜在的生物学系统:
具有相似基因表达谱的细胞群代表细胞类型簇;
相似细胞之间基因表达的微小变化表示连续(分化)轨迹;
具有相关表达谱的基因表明其共同调节作用。
下游分析可分为细胞水平和基因水平的方法,细胞水平的分析通常集中于两种结构的描述:簇和轨迹。这些结构又可以在细胞和基因水平上进行分析,从而形成聚类分析和轨迹分析方法。
聚类分析方法试图根据细胞的聚类来解释数据的异质性,簇允许我们推断细胞类型
目前主要有两种方法聚类产生细胞簇:聚类算法和社区检测算法(community detection)。
1. 聚类算法:一种经典的无监督机器学习方法,直接基于距离矩阵
当使用 k-means或作为高斯核的基础时,基于相关的距离可能优于其他距离指标 (Kim et al,2018)。
2. 社区检测方法是图聚类算法(graph-partitioning algorithms),依赖于单细胞数据的图表示。
社区检测通常比一般的聚类更快,因为只有相邻的细胞对必须被认为属于同一个集群。这种方法大大减少了可能群的搜索空间。
3. Scanpy和Seurat单细胞分析平台中默认聚类的方法——在单细胞KNN图上通过Louvain社区检测进行聚类。
在基因水平上,通过寻找每个聚类的基因特征对聚类数据进行分析。这些所谓的标记基因(marker genes)表征了该簇,并被用来用一个有意义的生物学标签来注释它,该标签代表细胞簇内细胞的身份。由于任何聚类算法都会产生数据的分区,所以只有成功注释所代表的生物学才能确定所识别的聚类的有效性。
一些问题
并不总是清楚什么是细胞类型。例如,虽然 T 细胞可能是某些细胞类型的满意标记,但其他细胞可能在数据集中寻找 T 细胞亚型并区分 CD4 和 CD8 T 细胞 (Wagner et al,2016;Clevers et al,2017)。
相同细胞类型的细胞在不同状态下可在单独的簇中检测到。
所以最好使用术语细胞身份(cell identities)而不是细胞类型(cell types)。在分群和注释群之前,用户必须决定哪一级别的注释细节,从而决定哪一级集群的分辨率。
识别和注释簇依赖于使用描述单个细胞身份预期表达谱的外部信息来源。
在没有相关参考数据库的情况下,可以通过比较数据来源的标记基因与来自文献的标记基因或直接可视化文献来源的标记基因的表达值来注释细胞身份。
使用参考数据库信息注释集群有两种方式:使用数据来源的标记基因或使用全基因表达谱。
检测标记基因时应注意两个方面:
标记基因获得的 P 值基于获得的细胞簇代表实际生物学过程。如果考虑到聚类的不确定性,在统计检验中必须考虑到聚类与标记基因检测的关系。
标记基因在数据集中区分一个簇与其他簇,因此不仅依赖于细胞簇,还依赖于数据集组成。如果数据集组成不能准确代表背景基因表达,检测到的标记基因将偏向于缺失的部分。
自动集群注释通过直接将注释参考簇的基因表达谱与单个细胞进行比较,scmap (Kiselev et al,2018b) 或 Gaett (preprint:Pliner et al,2019) 等工具可以在参考和数据集之间传输注释。
但是:不应放弃标记基因计算进行手动注释,特别是对于包含许多集群的大型数据集。
目前的最佳实践是两种方法的组合。为了提高处理速度,自动化的细胞识别注释可以用于粗略标记细胞和识别可能的子簇。随后,应对数据集簇计算标记基因,并与来自参考数据集或文献的已知标记基因集进行比较。对于较小的数据集和缺少参考图谱的数据集,手动注释即可。
围绕着每个细胞同一簇的细胞比例,这些比例可因疾病反应而改变。
研究单细胞数据中的组成变化需要足够的细胞数量来有力地评估细胞-同一簇的比例,以及足够的样本数量来评估细胞-同一簇组成中的预期背景变化。
可对回归系数进行统计检验,以评估特定细胞鉴别的频率是否发生显著变化。
1. Trajectory inference
轨迹推断——为了捕捉细胞身份、分支分化过程或生物功能中渐进的、不同步的变化,需要基因表达的动态模型
轨迹推理方法将单细胞数据解释为连续过程的快照。通过寻找穿过细胞空间的路径,使相邻细胞之间的转录变化最小化,重建了这一过程,细胞的排列顺序径由伪时间(pseudotime)变量描述。虽然该变量与根细胞的转录距离有关,但其通常被解释为发育时间的代表
模型的范围从简单的线性或分叉轨迹,到复杂的图形、树或多分支轨迹。TI 方法应根据预期轨迹的复杂性进行选择。
在典型的工作流中,当有一个内建的降维步骤时,TI 方法被应用于约简数据或校正数据。由于多个生物过程通常在细胞内同时发生,因此逐步消除其他过程的生物效应可能有助于隔离预期轨迹。
推断轨迹不一定代表生物过程。首先,这些仅表示转录相似性。少数 TI 方法包括对其模型中不确定性的评价 (Griffiths et al,2018)。因此,需要更多信息来确认是否确实采集了生物过程。这些信息可以以扰动实验、推断调控基因动力学和 RNA 速度支持的形式出现。
2. 基因水平分析轨迹Gene expression dynamics
一种支持推断轨迹不是拟合转录噪声结果的方法是在基因水平分析轨迹。
3.轨迹的细胞水平分析Metastable states
轨迹的细胞水平分析研究假时间内的细胞密度。假设细胞以无偏倚的方式被取样,沿着轨迹的密集区域表明首选转录状态。当把轨迹解释为一个时间过程时,这些致密区域可能代表亚稳态,可以通过绘制假时间坐标直方图找到这些亚稳态。
单细胞数据的基因水平分析:差异表达检测、基因集分析和基因调控网络推断直接研究数据中的分子信号。这些方法不是描述细胞的异质性,而是使用这种异质性作为理解基因表达的背景。
1.Differential expression testing
可以通过在细胞识别簇中执行测试来解释单细胞环境中的细胞异质性。
bulk 和单细胞 DE 工具在方法上有所不同
开发了bulk 方法以从少量样本中准确估计基因方差,但单细胞数据不存在此问题。
单细胞数据包含独特的技术噪声伪影,如脱落和高细胞间变异性
性能最佳的 DE 分析工具为 DESeq2 (Love et al,2014) 和 EdgeR (Robinson et al,2010),结合 ZINB-wave (Risso et al,2018) 估计的权重。需要包括加权批量 DE 检测方法的独立比较研究来确认这些结果。
问题和建议:
2. Gene set analysis
基因水平分析方法通常会产生长长的候选基因列表,可以根据共享特征将基因分组到集合中,并检测这些特征是否在候选基因列表中过度表达,从而促进这些结果的解释。
单细胞分析领域的一个最新进展是利用配对的基因标记进行配体受体分析。细胞簇之间的相互作用是根据受体及其同源配体的表达推断的。配体受体对标记可以是从最近的 CellPhoneDB 中获得 (Vento-Tormo et al,2018),并使用统计模型解释跨集群的高表达基因。
3. Gene regulatory networks
基因调控网络推断是基于相关、互信息等基因共表达的测量,或通过回归模型进行的(Chen & Mar, 2018)。
如果两个基因表现出一种共表达信号,即使考虑到所有其他基因都是潜在的混杂因子,这些基因也被认为具有因果调控关系。推断基因调控关系与轨迹相关调控基因的检测有关。
Scater (McCarthy et al,2017) 和 Seurat (Butler et al,2018) 很容易与 R Bioconductor 项目提供的大量分析工具连接 (Huber et al,2015)。Scater 在 QC 和预处理方面具有特别的优势,而 Seurat 可以说是最流行和最全面的平台,它包括了大量的工具和教程。
scanpy (Wolf et al,2018),这是一个不断增长的基于 python 的平台,它展示了对大量细胞。它充分利用了越来越多的用 Python 编写的工具,这些工具在机器学习应用程序中特别流行。
图形用户界面平台使非专业用户能够构建单细胞分析工作流程。用户通常通过规定的工作流程进行指导,以便于分析,但也限制了用户的灵活性。
https://mp.weixin.qq.com/s/rTgExkJHs9cWPrLZM4qRBQ