An ancient interdimensional horror who has recently awoken from his aeons-long slumber. His true name cannot be pronounced by the human tongue and his true form cannot be grasped by the human mind. It is said that, when the stars are right, he will herald the return of the Old Ones to plunge the world into darkness once more. In the meantime, he maintains about 20 Bioconductor packages for analyzing a range of genomics data modalities. ——Aaron Lun
为了满足大家给细胞亚群做鉴定的需求,老牌reference based 的细胞鉴定R包SingleR出了一本书:《Assigning cell types with SingleR》。从原理到应用案例到注意事项讲了个透顶。
本书是开源的:https://ltla.github.io/SingleRBook/index.html
看这主题就是book down的模板啊,肯定能够找到它的源码:https://github.com/LTLA/SingleRBook。于是我下载了一本离线的SingleRBook放在了QQ交流群:1057591379,需要可以免费领取。
我们来看一看本书的大纲:
那么,我们说这本书除了比一般的R语言教程多了原理的讲解之外,他的新的点在哪里呢?下面谈谈我的感受:
合格的教程
一个好的教程除了教会人们how to
之外,还应该尽力地告诉大家why
和what
就像富集分析的R包https://yulab-smu.github.io/clusterProfiler-book/chapter12.html一样。这样他就不仅仅是一个教程了,而是一个知识库。
如何选择一个好的reference
在书中的2.5 Comments on choice of references作者提出了单细胞细胞注释时候的一个经典问题:如何选择先验知识?拿我们的数据朝哪个数据集上mapping,这是一个关键的问题。
注释结果的评估
对每一种注释结果给出模型的信任程度,这有助于我们做最后的决断。singleR会给出诊断信息:
pred.grun$scores[1:5,]
## acinar alpha beta delta duct endothelial epsilon mesenchymal
## [1,] 0.6797 0.1463 0.1554 0.1029 0.4971 0.2030 0.04434 0.1848
## [2,] 0.6832 0.1849 0.1611 0.1250 0.5133 0.2231 0.08909 0.2140
## [3,] 0.6845 0.2032 0.2141 0.1875 0.5060 0.2286 0.08960 0.1961
## [4,] 0.6472 0.2050 0.2115 0.1879 0.7300 0.2285 0.12107 0.2708
## [5,] 0.6079 0.2285 0.2419 0.1938 0.6616 0.2659 0.16007 0.3228
同时和多个数据集比较
Single R可以同时做多个数据集的mapping。
在某些情况下,我们可能希望对测试数据集的注释使用多个references 。这将产生一组更全面细胞类型,这些细胞类型没有被任何单独的references 涵盖,特别是在考虑分辨率差异时。然而,由于不同参考文献(技术、实验方案或生物系统的差异)以及研究者之间注释词汇的差异,这并不是微不足道的。
这时候我们可能要用不同的参考数据集来对我们的数据做注释,如何理解因references 不同的带来的不同细胞类型?
有几种策略可用于从多个references 中组合推断:
- 在组合references 中使用特定于references 的标签
- 在联合references 中使用统一的标签
- 综合多个references 的分数
cell ontology
也许我们熟悉GO的概念,也知道DO的意识,是不是也可以把本体论的那套方法论拿到细胞类型中来呢?
显然是可以的:Cell Ontology.
案例研究
最后本书给出了两个使用案例: