SCS 43. 单细胞数据中细胞群的纯度/异质性计算(ROGUE)

b67c56decf82f353501e325d5289d1bf.png


简    介

单细胞RNA测序(scRNA-seq)是一种发现和注释细胞类型和状态的通用工具,但细胞亚型的确定和注释往往是主观的和任意的。通常甚至不清楚给定的群集是否均匀。在这里提出了一个基于熵的统计,ROGUE以准确地量化鉴定细胞团的纯度并证明ROGUE指标是广泛适用的,并且能够在广泛的模拟和真实数据集上对聚类纯度进行准确,敏感和稳健的评估。将这一指标应用于成纤维细胞、B细胞和大脑数据,确定了额外的亚型,并演示了ROGUE指导分析在特定亚群中检测精确信号的应用。ROGUE可以应用于所有已测试的scRNA-seq数据集,对于评估假定簇的质量、发现纯细胞亚型以及构建全面、详细和标准化的单细胞图谱具有重要意义。

3bc288c5e9ed018124b322b02892b623.png

软件包安装

软件包安装非常简单,利用devtools安装即可。

install.packages("tidyverse")

if (!requireNamespace("devtools", quietly = TRUE)) 
  install.packages("devtools")

devtools::install_github("PaulingLiu/ROGUE")

数据读取

数据输入需要两种文件:一种是count矩阵,一种是meta信息。

suppressMessages(library(ROGUE))
suppressMessages(library(ggplot2))
suppressMessages(library(tidyverse))

expr <- readr::read_rds(file = "./DC.rds.gz")
meta <- readr::read_rds(file = "./info.rds.gz")

expr[1:5, 1:4]
##       _p1t1__bcGDSJ _p1t1__bcDRQX _p1t1__bcFPXB _p1t1__bcHVVV
## A2M               0             0             0             0
## A2ML1             0             0             0             0
## AAAS              0             0             0             0
## AACS              0             0             0             0
## AAGAB             0             0             0             0
dim(expr)
## [1] 9795  913
head(meta)
## # A tibble: 6 × 26
##   Patient Tissue `Barcoding emulsion` Library Barcode `Total counts`
##   <chr>   <chr>  <chr>                <chr>   <chr>            <dbl>
## 1 p1      tumor  p1t                  p1t1    bcGDSJ            4731
## 2 p1      tumor  p1t                  p1t1    bcDRQX            1212
## 3 p1      tumor  p1t                  p1t1    bcFPXB            2639
## 4 p1      tumor  p1t                  p1t1    bcHVVV            2978
## 5 p1      tumor  p1t                  p1t1    bcGJVN            1509
## 6 p1      tumor  p1t                  p1t1    bcFSSY            3369
## # ℹ 20 more variables: `Percent counts from mitochondrial genes` <dbl>,
## #   `Most likely LM22 cell type` <chr>, `Major cell type` <chr>, ct <chr>,
## #   used_in_NSCLC_all_cells <lgl>, x_NSCLC_all_cells <lgl>,
## #   y_NSCLC_all_cells <lgl>, used_in_NSCLC_and_blood_immune <lgl>,
## #   x_NSCLC_and_blood_immune <dbl>, y_NSCLC_and_blood_immune <dbl>,
## #   used_in_NSCLC_immune <lgl>, x_NSCLC_immune <lgl>, y_NSCLC_immune <lgl>,
## #   used_in_NSCLC_non_immune <lgl>, x_NSCLC_non_immune <lgl>, …

实例操作

通常,在无监督的scRNA-seq数据分析中,甚至不清楚给定的簇是否均匀。cluster 纯度的概念,并引入了一个概念新颖的统计,称为ROGUE,来检查一个给定的集群是否是一个纯细胞群体。

8d5a5d6fb468f01b759f95bf83a4b171.png

过滤掉低丰度基因和低质量细胞

matr.filter()过滤掉低丰度的基因和低质量的细胞。

expr <- matr.filter(expr, min.cells = 10, min.genes = 10)

表达式熵模型

为了应用S-E模型,我们使用SE_fun函数计算每个基因的表达熵。

ent.res <- SE_fun(expr)
head(ent.res)
## # A tibble: 6 × 7
##   Gene     mean.expr entropy   fit    ds p.value p.adj
##   <chr>        <dbl>   <dbl> <dbl> <dbl>   <dbl> <dbl>
## 1 LYZ           1.65   0.762 1.27  0.510       0     0
## 2 HLA-DQB2      1.35   0.569 1.01  0.437       0     0
## 3 BIRC3         1.21   0.458 0.886 0.428       0     0
## 4 HSPA1A        1.54   0.766 1.17  0.406       0     0
## 5 HLA-DRB1      2.99   2.24  2.59  0.353       0     0
## 6 GZMB          1.26   0.586 0.931 0.345       0     0

S-E模型能准确识别信息基因

使用SEplot函数来可视化S和E之间的关系。

SEplot(ent.res)

165c9722f9b08684e1b3b31ef34ac6d5.png

ROGUE计算

为了评估这个DC种群的纯度,使用CalculateRogue函数计算ROGUE值。该群体的ROGUE值为0.72,从而证实了其异质性。

rogue.value <- CalculateRogue(ent.res, platform = "UMI")
rogue.value
## [1] 0.7219202

计算每个样本的每个假定聚类的ROGUE值

为了准确估计每个簇的纯度,建议计算不同样本中每种细胞类型的ROGUE值。

rogue.res <- rogue(expr, labels = meta$ct, samples = meta$Patient, platform = "UMI",
    span = 0.6)
rogue.res
##         tDC2      tpDC      tDC3      tDC1
## p1 0.8376831 0.8604547 0.8494896 0.8481964
## p2        NA        NA        NA        NA
## p3 0.8028900 0.8941508 0.8995863 0.9150546
## p4 0.8041421 0.8992421 0.8763108 0.8658948
## p5 0.8702724 0.9321946 0.9247687        NA
## p6 0.8596472        NA 0.8892388 0.9280764
## p7 0.9262411 0.9028763 0.8949111 0.9419589

ROGUE 可视化

箱线图
rogue.boxplot(rogue.res)

1f164cc0177d12587483accb0b5dfc00.png

rogue.res
##         tDC2      tpDC      tDC3      tDC1
## p1 0.8376831 0.8604547 0.8494896 0.8481964
## p2        NA        NA        NA        NA
## p3 0.8028900 0.8941508 0.8995863 0.9150546
## p4 0.8041421 0.8992421 0.8763108 0.8658948
## p5 0.8702724 0.9321946 0.9247687        NA
## p6 0.8596472        NA 0.8892388 0.9280764
## p7 0.9262411 0.9028763 0.8949111 0.9419589
热图

绘制热图的时候我们发现结果里面带有NA这种情况,有两种解决办法,一种就是将NA赋值较大的值,一种就是将数据做成对称的形式,这里我们就用简单粗暴的方式。

rogue.res[is.na(rogue.res)]=-0.8
pheatmap::pheatmap(rogue.res,
                   legend_breaks = c(-0.8,seq(from=0.8, to=1, by=0.02)),
                   legend_labels = c("NA",seq(from=0.8, to=1, by=0.02)),
                   legend = TRUE,
                   fontsize = 8
                  # filename = 'pheatmaps.pdf'
                   )

99497519fe42bb02e56f0a279a8609f4.png

Reference

Liu B, Li C, Li Z, Wang D, Ren X, Zhang Z. An entropy-based metric for assessing the purity of single cell populations. Nat Commun. 2020 Jun 22;11(1):3155.


细胞生信分析教程

桓峰基因公众号推出单细胞生信分析教程并配有视频在线教程,目前整理出来的相关教程目录如下:

Topic 6. 克隆进化之 Canopy

Topic 7. 克隆进化之 Cardelino

Topic 8. 克隆进化之 RobustClone

SCS【1】今天开启单细胞之旅,述说单细胞测序的前世今生

SCS【2】单细胞转录组 之 cellranger

SCS【3】单细胞转录组数据 GEO 下载及读取

SCS【4】单细胞转录组数据可视化分析 (Seurat 4.0)

SCS【5】单细胞转录组数据可视化分析 (scater)

SCS【6】单细胞转录组之细胞类型自动注释 (SingleR)

SCS【7】单细胞转录组之轨迹分析 (Monocle 3) 聚类、分类和计数细胞

SCS【8】单细胞转录组之筛选标记基因 (Monocle 3)

SCS【9】单细胞转录组之构建细胞轨迹 (Monocle 3)

SCS【10】单细胞转录组之差异表达分析 (Monocle 3)

SCS【11】单细胞ATAC-seq 可视化分析 (Cicero)

SCS【12】单细胞转录组之评估不同单细胞亚群的分化潜能 (Cytotrace)

SCS【13】单细胞转录组之识别细胞对“基因集”的响应 (AUCell)

SCS【14】单细胞调节网络推理和聚类 (SCENIC)

SCS【15】细胞交互:受体-配体及其相互作用的细胞通讯数据库 (CellPhoneDB)

SCS【16】从肿瘤单细胞RNA-Seq数据中推断拷贝数变化 (inferCNV)

SCS【17】从单细胞转录组推断肿瘤的CNV和亚克隆 (copyKAT)

SCS【18】细胞交互:受体-配体及其相互作用的细胞通讯数据库 (iTALK)

SCS【19】单细胞自动注释细胞类型 (Symphony)

SCS【20】单细胞数据估计组织中细胞类型(Music)

SCS【21】单细胞空间转录组可视化 (Seurat V5)

SCS【22】单细胞转录组之 RNA 速度估计 (Velocyto.R)

SCS【23】单细胞转录组之数据整合 (Harmony)

SCS【24】单细胞数据量化代谢的计算方法 (scMetabolism)

SCS【25】单细胞细胞间通信第一部分细胞通讯可视化(CellChat)

SCS【26】单细胞细胞间通信第二部分通信网络的系统分析 (CellChat)

SCS【27】单细胞转录组之识别标记基因 (scran)

SCS【28】单细胞转录组加权基因共表达网络分析(hdWGCNA)

SCS【29】单细胞基因富集分析 (singleseqgset)

SCS【30】单细胞空间转录组学数据库(STOmics DB)

SCS【31】减少障碍,加速单细胞研究数据库(Single Cell PORTAL)

SCS【32】基于scRNA-seq数据中推断单细胞的eQTLs (eQTLsingle)

SCS【33】单细胞转录之全自动超快速的细胞类型鉴定 (ScType)

SCS【34】单细胞/T细胞/抗体免疫库数据分析(immunarch)

SCS【35】单细胞转录组之去除双细胞 (DoubletFinder)

SCS【36】单细胞转录组之k-近邻图差异丰度测试(miloR)

SCS【37】hdWGCNA在空间转录组学中的作用

SCS【38】单细胞转录组之免疫浸润分析(escape)

SCS【39】单细胞转录组之降维散点图的美化 (SCpubr)

SCS【40】单细胞转录组之便捷式细胞类型注释 (scMayoMap)

SCS【41】基于贝叶斯反卷积法整合分析bulk和scRNA-seq (BayesPrism)

SCS 42.基于单细胞转录组表型数据构建临床预测模型 (Sicssor)

桓峰基因,铸造成功的您!

未来桓峰基因公众号将不间断的推出单细胞系列生信分析教程,

敬请期待!!

桓峰基因官网正式上线,请大家多多关注,还有很多不足之处,大家多多指正!

http://www.kyohogene.com/

桓峰基因和投必得合作,文章润色优惠85折,需要文章润色的老师可以直接到网站输入领取桓峰基因专属优惠券码:KYOHOGENE,然后上传,付款时选择桓峰基因优惠券即可享受85折优惠哦!https://www.topeditsci.com/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值