单细胞水平的研究是仅次于NGS的一次生物信息学领域的革命,同样的随随便便发CNS的黄金时期也过去了,现在想发高分文章,拿多个病人的多个样本进行单细胞转录组测序是非常正常的,比如下面的:
大多数百万经费起的项目,当然,现在想发普通的单细胞文章,也是得做多个样本了,就面临如何整合的问题,其中最出名的当然是Seurat包的CCA方法了,具体多火呢,发了才一年,引用就快破千!
Seurat主要是处理10x单细胞转录组数据,而10x仪器商业上的成功可以说是成就了Seurat包,另外一个比较火的多个样本单细胞转录组数据整合算法是mutual nearest neighbors (MNNs)
当然,其它工具也有很多,我想你应该是不会看的,我就列出来而已:
Seurat关于多个单细胞转录组样本整合的文章实在是很厉害了,第一个发在Nature Biotechnology volume36, pages411–420 (2018),第二个发在CELL,Volume 177, Issue 7, 13 June 2019, 至少是我很长一段时间都无法企及的!
有趣的是 sctransform 还在预印本:Hafemeister, C. & Satija, R. Normalization and variance stabilization of single-cell RNA-seq data using regularized negative binomial regression. bioRxiv 576827 (2019). doi:10.1101/576827 不知道这个文章最后会在CNS的哪个子刊,或者干脆不发表了?
在CELL,Volume 177, Issue 7, 13 June 2019,文章里面描述了单细胞数据整合的两大问题:
canonical correlation analysis (CCA)
在Seurat官网的最简单例子是两个样本,本来是有很明显的样本差异的,使用CCA整合后右图可以看到样本间差异就被抹去了。
如果你下载文章仔细学习,会发现作者还举了很多其它例子,包括不同单细胞转录组技术平台数据整合,甚至不同物种(人和鼠)的数据整合,还有不同物种不同技术平台的综合整合,可以说是很厉害了,如下:
就是不同技术平台:3,451 hematopoietic progenitor cells from murine bone marrow sequenced using MARS-Seq (2,686) and SMART-Seq2 (SS2; 765)
如下:
就是不同物种:10,191 pancreatic islet cells from human (n = 8,424 cells) and mouse (n = 1,767 cells) donors
因为这个被他们实验室自己的CCA + anchors (Seurat v3)取代了,所以学这个CCA + dynamic time warping (Seurat v2) 的意义可能不大,我这里就贴一下作者的示例代码,来自于:https://rdrr.io/cran/Seurat/man/RunCCA.html 需要 (Seurat v3)
pbmc_small
# As CCA requires two datasets, we will split our test object into two just for this example
pbmc1 <- subset(pbmc_small, cells = colnames(pbmc_small)[1:40])
pbmc2 <- subset(pbmc_small, cells = colnames(x = pbmc_small)[41:80])
pbmc1[["group"]] <- "group1"
pbmc2[["group"]] <- "group2"
pbmc_cca <- RunCCA(object1 = pbmc1, object2 = pbmc2)
# Print results
print(x = pbmc_cca[["cca"]])
不过,在单细胞天地我也会继续更新一下实际例子,测试数据在里面!