说在前面
我们在前面通过3篇推文介绍了张泽民老师的系列研究成果张泽民老师系列文章解读(一),然后又通过两篇文章介绍了张老师开发的两个软件:SciBet:一个软件解决单细胞注释所有烦恼; iMAP: 单细胞数据整合工具天花板。那么今天,Immugent再带来一款张老师开发的用于评估细胞亚群纯度的软件:ROGUE。
相应文章发表在NATURE COMMUNICATIONS杂志上,篇名为:An entropy-based metric for assessing the purity of single cell populations,下面我们就通过实操来展示这个R包的用法。
代码实现
这个R包非常灵巧,也很好安装。。。
devtools::install_github("PaulingLiu/ROGUE")
suppressMessages(library(ROGUE))
suppressMessages(library(ggplot2))
suppressMessages(library(tidyverse))
模拟数据有两个,在这里:expression和 meta,先下载好,然后放在相应的文件夹下
expr <- readr::read_rds(path = "~/DC.rds.gz")
meta <- readr::read_rds(path = "~/info.rds.gz")
expr[1:5, 1:4]
head(meta)
#过滤掉低质量细胞
expr <- matr.filter(expr, min.cells = 10, min.genes = 10)
ent.res <- SE_fun(expr)
head(ent.res)
SEplot(ent.res)
通过ROGUE鉴定出的信息丰富的基因,可用于后续的聚类分析和伪时间分析。
rogue.value <- CalculateRogue(ent.res, platform = "UMI")
rogue.value
rogue.res <- rogue(expr, labels = meta$ct, samples = meta$Patient, platform = "UMI", span = 0.6)
rogue.res
rogue.boxplot(rogue.res)
ROGUE评分默认>0.9时是一致性比较高的细胞亚类,从这个结果可以看到DC2的异质性比较高,需要进一步分群。。。
小结
单细胞数据分析最重要的一步就是细胞亚群的注释,但是究竟分多少群合适?对很多小伙伴来说都是一个哲学性质的问题,例如下面这幅图,我们可以根据自己的喜好分成2-5群,但是这样显然不符合科研的严谨性,因为理论上这是根据本质已经确定是。
通过ROGUE我们就可以判断出,最少分成3群才比较准确,4,5群时就没有本质的改变。这样就把上面提出的感性问题变成了用事实说话的理性解释。
好啦,本次分享我们到这就结束了,欢迎对ROGUE感兴趣的小伙伴通过后台与我们联系。。
上一篇张泽民老师系列文章解读-综述篇下一篇iMAP: 单细胞数据整合工具天花板