跟着运来兄搭建自己的生物信息小书房。趁年轻,读几本硬书,到老了慢慢反刍。
《Single-cell best practices
》是咱们生信书房推荐的第66本书。最近在生信技能树上,看再次到这本书(https://www.sc-best-practices.org/preamble.html),内容确实比第一次关注到这本书更加全面了。周末花时间再次浏览了一下,确实是一本难能可贵的单细胞多组学数据分析的好材料。
关于单细胞数据分析最佳实践(Single-cell best practices
),一直伴随着单细胞数据的发展,概念、工具、方法、流程。这本书主要是文章2023年一篇最佳实践文章观点的实践,这篇文章是:
Heumos, L., Schaar, A.C., Lance, C. et al. Best practices for single-cell analysis across modalities. Nat Rev Genet (2023). https://doi.org/10.1038/s41576-023-00586-w
此正文见刊的时候,我在单细胞天地上全文翻译过:单细胞多组学数据分析最佳实践(2023典藏版)。还记得这个译文里的每一个大的模块中都加了一个运来曰吗?当时的这本书电子版还比较简单,加之Python的还没有现在这么的广泛。两年之后的今天,我们再次走进这本书,在正好的时候。
第一吸引我的是本书每一个章节都有的Motivation。如质控、降维、聚类、注释、差异基因、富集分析、轨迹分析,等等,每个分析的开头都有这部分:与读者沟通,为什么要做这个分析或这个分析试图解决什么样的生物学问题。这是其他很多以工具为中心的教程,所没有的。
而这对单细胞数据分析很重要,没有了这部分,数据分析就降维为工具本身。读者们在读这类资料的时候,很容易陷入唯工具论的泥潭。一个直观的结果就是:为了会而会。在分析单细胞数据的时候,恨不得把自己看到的所有的工具都用上,而不论这个工具适不适合自己的数据。这也是只有hwo
没有why
的结果。
这本书每一节的开头Motivation在解决这个问题的方向前进了一步:它至少引起我们的思考。
第二点是,本身全部由Python实现。也就是说单细胞多组学的数据分析,单细胞转录组、免疫组、表观组、表面蛋白组,这些都可以用python完成了。这一点在单细胞数据通量越来越高、组学信息越来越多的时候,显然是接过了R语言的接力棒。也就是scanpy
接过了Seurat
的接力棒。这里让我们感慨一下:
清代赵翼的《论诗五首》
李杜诗篇万口传,至今已觉不新鲜
江山代有才人出,各领风骚数百年。
第三点,就是单细胞多组学部分。在翻译本文原文的时候,运来曾经曰过:
运来曰:在单细胞多模态数据分析框架中,单细胞转录组数据是比较成熟的也是应用最为广泛的,所以单细胞转录组数据在多模态数据中是处于基础和中心位置的,在整合多模态数据的时候,往往需要借助单细胞转录组的数据作为中转站或者背景。虽然还不是很完美,但是单细胞转录组的数据分析,为我们提供了一个相对完整的框架,基于其开发的实验工序和分析工具也启发者其他组学的发展。
这一判断依然成立,在单细胞转录组的基础图谱上,加入其他组学的信息。
第四点,对我来说比较新颖的视角是,本书以单细胞数据为中心建设起来链接批量测序Bulk
和空间信息space
的桥梁。分别体现在两个章节里:
在以往的认知里,bulk、scrna、Spatial 三者之间在分辨率上是在不同维度的,层次递进的,但是这三个分辨率的数据在本书中得到了统一。
所以这里就引入新的思考:不同组学的数据可以整合在一起分析,那么不同分辨率的数据是不是也可以整合在一起分析呢?如何可以的话, 这会是怎样一种图景呢?这一点我还无法想象出具体的细节,但是朦朦胧胧也有一个方向,也就是在不同分辨率的数据分析中,也是以单细胞数据为中心的。
综上,想做导师掌中宝,就要学好单细胞。
番外。
再啰嗦提一下,单细胞数据分析中的“数据均一化normalize
”和“数据标准化scale
”的去区别与联系。这两概念经常搞混,有人交替使用,有人认为二者是一个意思,也有人反着用,他们之间各执一词,似乎都有道理。但是二者之间是由区别的,应用的场景也是不同的。
normalize
处理的对象细胞,让细胞之间具有可比性,统一测序深度。scale
处理的是选出来的高变异基因,为的是跑PCA做准备。所以如果在其他地方跑过PCA也会遇到scale
个单词。这一区分在Seurat的教程官网区分的很明显,毕竟R语言就是为统计而生。而在scanpy的教程官网,就显得模棱两可。在Preprocessing and clustering 3k PBMCs (legacy workflow)
中,采用了和Seruat一样的处理先normalize再scale的方法,而在Preprocessing and clustering
中直接没有了scale。于是,在github上有这个tissue:
在这本书里,这俩概念直接画上了等号。
反正单细胞数据分析一边是一套又一套的最佳实践,一边又是大量的模棱两可。不变的啊,是科学家手中的生物学问题。最佳实践,也不是金科玉律。
# Preprocessing and clustering 3k PBMCs (legacy workflow)
https://scanpy.readthedocs.io/en/stable/tutorials/basics/clustering-2017.html
# Preprocessing and clustering
https://scanpy.readthedocs.io/en/stable/tutorials/basics/clustering.html
# scanpy scale or not
https://github.com/scverse/scanpy/issues/2164
# in this book scales_counts = sc.pp.normalize_total
https://www.sc-best-practices.org/preprocessing_visualization/normalization.html