单细胞交响乐
  • 前言:我与《单细胞交响乐》的缘分
  • 1 准备篇:背景知识
    • 1.1 数据结构
    • 1.2 总览 | 从实验到分析
  • 2 积累篇:文献阅读
    • 2.1.1 综述 | 2019-单细胞转录组分析最佳思路
    • 2.1.2 综述 | 2018-单细胞捕获平台
    • 2.1.3 综述 | 2017-scRNA中的细胞聚类分群
    • 2.1.4 综述 | scRNA已经开发出超过1000款工具了,你用过几种?
    • 2.1.5 综述 | 2021-单细胞测序的微流控技术应用
    • 2.2.1 研究 | 2018-单细胞转录组探索癌症免疫治疗获得性抗性机理
    • 2.2.2 研究 | 2018-人类结直肠癌单细胞多组学分析
    • 2.2.3 研究 | 2020-单细胞分析揭示葡萄膜黑色素瘤新的进化复杂性
    • 2.2.4 研究 | 2020-COVID-19病人支气管免疫细胞单细胞测序分析
    • 2.2.5 研究 | 2020-原汁原味读--单细胞肿瘤免疫图谱
    • 2.2.6 研究 | 2021-多发性骨髓瘤发展过程中肿瘤和免疫细胞的共同进化
    • 2.2.7 研究 | 2021-多个组织的成纤维细胞图谱
    • 2.2.8 研究 | 2021-多组学分析肺结核队列的记忆T细胞状态
    • 2.2.9 研究 | 2021-CancerSCEM: 人类癌症单细胞表达图谱数据库
    • 2.2.10 研究| 2021-单细胞转录组分析COVID-19重症患者肺泡巨噬细胞亚型
    • 2.2.11 研究 |2021-单细胞转录组揭示肺腺癌特有的肿瘤微环境
    • 2.2.12 研究 | 2021-单细胞转录组揭示乳头状甲状腺癌起始与发展
    • 2.2.13 研究 | 2021-解析食管鳞癌化疗病人的单细胞转录组
    • 2.2.14 研究 | 2021-单细胞水平看骨髓瘤的细胞状态和基因调控
    • 2.3.1 算法|2020-BatchBench比较scRNA批次矫正方法
    • 2.3.2 算法 | 2021-scPhere——用地球仪来展示降维结果
    • 2.3.3 算法 | 2021-单细胞差异分析方法评测
    • 2.3.4 算法 | 2021-细胞分群新方法——CNA(co-varying neighborhood analysis)
    • 2.3.5 工具 | 2018-iSEE:单细胞数据可视化辅助网页工具
    • 2.3.6 工具 | 2021-MACA: 一款自动注释细胞类型的工具
    • 2.3.7 工具 | 2021-一个很有想法的工具——Ikarus,想要在单细胞水平直接鉴定肿瘤细胞
  • 3 流程篇:分析框架
    • 3.1 质控
    • 3.2 归一化
    • 3.3 挑选表达量高变化基因
    • 3.4 降维
    • 3.5 聚类
    • 3.6 Marker/标记基因检测
    • 3.7 细胞类型注释
    • 3.8 批次效应处理
    • 3.9 多样本间差异分析
    • 3.10 检测Doublet
    • 3.11 细胞周期推断
    • 3.12 细胞轨迹推断
    • 3.13 与蛋白丰度信息结合
    • 3.14 处理大型数据
    • 3.15 不同R包数据的相互转换
  • 4 实战篇:活学活用
    • 4.1 实战一 | Smart-seq2 | 小鼠骨髓
    • 4.2 实战二 | STRT-Seq | 小鼠大脑
    • 4.3 实战三 | 10X | 未过滤的PBMC
    • 4.4 实战四 | 10X | 过滤后的PBMC
    • 4.5 实战五 | CEL-seq2 | 人胰腺细胞
    • 4.6 实战六 | CEL-seq | 人胰腺细胞
    • 4.7 实战七 | SMARTer | 人胰腺细胞
    • 4.8 实战八 | Smart-seq2 | 人胰腺细胞
    • 4.9 实战九 | 不同技术数据整合 | 人胰腺细胞
    • 4.10 实战十 | CEL-seq | 小鼠造血干细胞
    • 4.11 实战十一 | Smart-seq2 | 小鼠造血干细胞
    • 4.12 实战十二 | 10X | 小鼠嵌合体胚胎
    • 4.13 实战十三 | 10X | 小鼠乳腺上皮细胞
    • 4.14 | 实战十四 | 10X | HCA计划的38万骨髓细胞
  • 5 补充篇:开拓思路
    • 5.1 10X Genomics概述
      • 5.1.1 10X Genomics 问题集锦
    • 5.2 CellRanger篇
      • 5.2.1 CellRanger实战(一)数据下载
      • 5.2.2 CellRanger实战(二) 使用前注意事项
      • 5.2.3 CellRanger实战(三) 使用初探
      • 5.2.4 CellRanger实战(四)流程概览
      • 5.2.5 CellRanger实战(五) 理解count输出的结果
    • 5.3 Seurat的使用
      • 5.3.1 Seurat V3 | 实战之2700 PBMCs分析
      • 5.3.2 Seurat V3 | 如何改造Seurat包的DoHeatmap函数?
      • 5.3.3 scRNA的3大R包对比
      • 5.3.4 Seurat两种数据比较:integrated vs RNA assay
      • 5.3.5 seurat 的几种findmaker比较
    • 5.4 Monocle的使用
      • 5.4.1 Monocle V3实战
    • 5.5 多个数据集的整合
      • 5.5.1 使用Seurat的merge功能进行整合
      • 5.5.2 如何使用sctransform去除批次效应
由 GitBook 提供支持
在本页
  • 前言
  • 首先为什么要进行批次矫正?
  • 三个数据集
  • 直接上结论
  • 结果
  • 1 测试批次整合与细胞分群
  • 2 当细胞数量或批次数量增加时,批次矫正变得困难
  • 3 批次处理对非监督聚类和marker基因鉴定的影响

这有帮助吗?

  1. 2 积累篇:文献阅读

2.3.1 算法|2020-BatchBench比较scRNA批次矫正方法

刘小泽写于2020.5.29

上一页2.2.14 研究 | 2021-单细胞水平看骨髓瘤的细胞状态和基因调控下一页2.3.2 算法 | 2021-scPhere——用地球仪来展示降维结果

最后更新于4年前

这有帮助吗?

这篇文章做了一件事,就是帮助我们区分不同的批次矫正方法,然后比较了一下优劣

文章题目:Flexible comparison of batch correction methods for single-cell RNA-seq using BatchBench

文章在:

上传时间是:2020.05.22

BatchBench地址 :

BatchBench is a Nextflow workflow for running the following scRNA-Seq data batch effect correction methods:

  • mnnCorrect

  • limma

  • ComBat

  • Seurat 3

  • Scanorama

  • Harmony

  • FastMNN

  • BBKNN

前言

首先为什么要进行批次矫正?

单细胞分析经常会整合一些公共数据,不同的实验时间、文库制备、测序方案,都会产生一些技术误差,如果太多,可能会干扰真实的生物信号。因此来自这些非生物因素的干扰就称作批次效应

作者将8种常用的批次矫正方法分为3类:

  • mnnCorrect、limma、ComBat、Seurat 3、Scanorama:产生一个整合、矫正后的表达矩阵

  • Harmony、FastMNN:不是直接操作原始表达矩阵,而是对降维后的结果操作(they operate on a low-dimensional embedding of the original expression matrices),因此如果下游分析如果要用到原始表达矩阵的话,这类方法就会受限

  • BBKNN:基于表达矩阵构建k-nearest neighbor graph(KNN),只能进行后续基于细胞的分析(如聚类、分群可视化),不能进行基于基因的分析(如marker基因鉴定、基因网络)

关于这8种方法:

以及这三类针对什么进行分析以及后续可以做什么,作者也作图说明:

但真正使用哪种方法,还是要依赖一个评测结果。但传统的评测只能针对已发表的方法,并且评测缺少一些高质量的数据集(比如尽可能多的包含批次效应的因素)

作者使用BatchBench,针对3种研究深入的数据集,对8种方法进行评测,这个方法的流程是:

三个数据集

Pancreas dataset

Baron (GSE84133)、Muraro (GSE85241)、Segerstolpe (E-MTAB-5061) 分别由inDrop, CEL-Seq2 和 Smart-Seq2产生。过滤细胞:细胞中基因表达量少于200;过滤基因:在少于3个细胞中表达。另外只保留有注释的细胞类型(去掉了unclassified这类的细胞)

Mouse Cell Atlas datasets

按照组织进行整合,得到了包含37个器官的数据集,其中选取了18个数据集(它们中包含大于1个批次并且有合理的细胞类型分布)。过滤细胞:基因表达量少于250;过滤基因:在少于50个细胞中表达;过滤细胞类型:细胞数量少于整体1%的类型;过滤批次:细胞数量少于总体5%的批次

Tabula Muris datasets

来自两个平台的同一组织的不同数据混合,得到11个器官的数据集。过滤细胞:基因表达量少于1000;过滤基因:在少于50个细胞中表达;过滤细胞类型:细胞数量少于整体1%的类型;过滤批次:细胞数量少于总体5%的批次。结果得到4168个基因,60828个细胞(40,058 from 10X and 20,770 from Smart-Seq2)

直接上结论

Seurat的整体效果最好,它既正确地整合了批次,又没有丢失不同细胞类型;

Harmony在pancreas和MCA的数据中表现也不错,但在矫正Tabula Muris数据时失败;Scanorama 和 fastMNN表现也算良好;

这里使用的熵评估方法,可能不太适用BBKNN,因此它需要额外的评测方法;

另外对于处理大量的细胞数量和批次,Harmony表现优秀,并且计算资源分配合理。除了Harmony和BBKNN,其他方法当遇到上百个批次的处理时(即使一个批次中的细胞数量不多)也会捉襟见肘,因此未来的批次效应处理方法应该向数据可扩展性(scalability)上发展。

如果想使用处理批次效应后的表达矩阵进行下游分析(如鉴定marker基因),这些方法都会遇到问题。因为marker基因并不是保守存在的,任何基于基因的分析(例如 找差异基因或者鉴定marker基因),都是基于基因表达量,而批次矫正方法需要保证不会干扰表达量的变化,这一点也是未来需要改进的。

结果

1 测试批次整合与细胞分群

使用了人类胰腺癌的3个scRNA数据集,原始数据的UMAP结果是:

左边是三个数据集,右边是各种细胞类型 但不得不说,两个图例使用的颜色太相近,容易引起混淆

可以看到,所有的方法都能将不同数据集的细胞混合起来,而依然可以分离不同的细胞类型

然后为了评估处理(先整合不同批次的细胞,然后分离不同的细胞类型)的效果,提出了计算一个”熵“:normalized Shannon entropy。如果批次方面的熵比较高,说明混合的批次之间更接近,也就是混合效果更好;如果细胞类型方面的熵比较低,说明细胞类型依然可区分

可以看到,不同的方法都保持较低的细胞类型方面的熵,因此它们都能够保证分离不同类型的细胞;但批次方面的熵差别较大。其中Seurat和Harmony整体表现较好,汽其次是Scanorama和fastMNN;而mnnCorrect, Limma 和 ComBat的表现较差

并且大部分方法对MCA(Mouse Cell Atlas)数据集的整合效果更好

图例:pancreas data (red), Mouse Cell Atlas (green), and Tabula Muris (blue)

2 当细胞数量或批次数量增加时,批次矫正变得困难

利用 Tabula Muris数据集(总共60,828 cells),取了它的1%、3%、5%、10%、20%、50%作比较

当细胞数量从608(1%)增至60828时,除了Scanorama、Harmony、Seurat,其他方法的批次熵都下降了50%左右。但是Scanorama在混合批次的同时,也混合了细胞类型(可以看到蓝色的虚线基本不变,说明细胞类型熵不变,也就是没有分离细胞类型)

Harmony是唯一一个在增加细胞数量后,批次熵增加的(图a)。除了Scanorama,其余方法的细胞类型熵都降低,说明细胞数量增多,细胞分群更容易

批次数量增加时,BBKNN, Seurat 和 Harmony表现最稳定(图d)

在时间方面,mnnCorrect和fastMNN随细胞数量增长,运行时间也呈现指数增长,mnnCorrect运行最慢。不过时间消耗在大部分软件中差别不大

在内存方面,所有的方法随细胞数量增长,内存消耗都呈现指数增长,其中Seurat消耗内存最多。综上,Seurat, mnnCorrect, ComBat 和 fastMNN是比较消耗资源的,而Harmony, Scanorama 和 BBKNN资源需求最小

a、d:熵的变化;b、e运行时间的变化;c、f:消耗内存的变化

3 批次处理对非监督聚类和marker基因鉴定的影响

使用三种非监督聚类方法:Leiden、Louvain、SC3,然后比较矫正前后的数据聚类结果。这个结果相似性的量化是利用Adjusted Rand Index (ARI),图a可以看到:MCA数据集利用不同的方法聚类后结果相似,但组织之间的差异比较大;Tabula Muris数据集也是如此,不过与MCA不同的是,利用SC3方法得到的聚类结果会比Louvain或Leiden结果普遍(11个组织中有7个)有更高的ARI。奇怪的是,对于心脏和乳腺组织,最佳的聚类结果发生在:SC3+非批次矫正的数据。对于pancreas数据,SC3倾向于得到更大的ARI,而且不想MCA数据,Seurat和Harmony的聚类结果与之前的熵分析结果也一致。

对整合后的数据进行marker基因鉴定,只有ComBat和Limma的结果可以找到大部分细胞类型的marker基因,Seurat只能对少部分细胞类型进行鉴定(图b),但如果检测单个数据的marker基因与混合矫正后的marker基因之间的一致性,Seurat的一致性更强(图c)。Seurat的一致性表现是牺牲细胞类型数量得到的

数据来自:

数据来自:

Flexible comparison of batch correction methods for single-cell RNA-seq using BatchBench
https://github.com/cellgeni/batchbench
https://figshare.com/s/865e694ad06d5857db4b
https://www.google.com/url?q=https://figshare.com/projects/Tabula_Muris_Transcriptomic_characterization_of_20_organs_and_tissues_from_Mus_musculus_at_single_cell_resolution/27733&sa=D&ust=1589187433512000&usg=AFQjCNFC_0CGNwum-u2nka-OvFAmxoECtA