SingleR计算每个细胞表达谱与每个参考样品的表达谱之间的Spearman相关性,相关分析仅对参考数据集中的变异基因(variable genes)进行。使用相关分布的固定分位数定义参考标签的得分,将得分最高的标签作为cluster的注释。
SingleR能够与seurat完美契合,载入包,载入SingleR参考数据HumanPrimaryCellAtlasData()。参考数据集的详细信息可以在其帮助页上查询,或者在SingleR网站查询。http://www.bioconductor.org/packages/release/bioc/vignettes/SingleR/inst/doc/SingleR.html
library(SingleR)
ref.se = HumanPrimaryCellAtlasData()
class(PBMC)[[1]]
[1] "Seurat"
鉴定各聚类的细胞类型,可选择method 参数为“single”,返回每个细胞的鉴定结果。clusters参数指定的各聚类的名称。
#SingleR预测聚类细胞类型
pred = SingleR(test = PBMC@assays$RNA@data, ref = ref.se,
labels = ref.se$label.fine, method = "cluster",
clusters = PBMC@active.ident, fine.tune = TRUE,
BPPARAM = MulticoreParam(40))
#鉴定结果
pred$pruned.labels
[1] "T_cell:CD8+_Central_memory" "B_cell:Memory" "NK_cell"
[4] "NK_cell" "B_cell:Memory" "B_cell:Plasma_cell"
[7] "T_cell:CD4+_effector_memory" "T_cell:gamma-delta" "B_cell:Plasma_cell"
[10] "NK_cell" "DC:monocyte-derived:antiCD40/VAF347" "B_cell:Germinal_center"
[13] "NK_cell"
热图展示的是不同聚类在细胞标签的得分,得分越高则该聚类为对应细胞标签的可能性越高。
plotScoreHeatmap(pred, clusters=pred@rownames, fontsize.row = 9,show_colnames = T)