问题:当我有一些bulk RNA-seq数据,例如高生存率与低生存率的患者组织、疾病与正常的患者组织、存在药物反应与无药物反应的患者组织。我如何找到能够影响这些条件的确切的细胞类型?

Bulk数据是由多种细胞类型共同构成的(就是一块肉,里面什么细胞都有)。利用Bulk数据识别临床相关细胞是非常困难的。

这里推荐一个工具——scAB,这个工具能够根据有label注释的bulk RNA-seq以及一套单细胞数据,找到与临床条件相关的细胞。如下图所示

在该文章中利用了癌症组织与正常组织作为例子,简单的描述了该方法能够得到的结果。其中与癌症最相关的是恶性细胞(malignant cells)。个人认为这个方法最大的作用就是锁定某种细胞类型进行后续分析,所以做到这一步大抵上可以了。


除了上述结果,scAB会将与临床标签相关细胞(scAB cell)亚分类,表明不同亚分类特异的生物学功能。

该算法同样鼓励用整体scAB cell与不相关细胞进行比较

代码如下

library(dplyr)
library(stringi)
library(stringr)
library(DESeq2)
library(ggplot2)
library(ggrepel)
library(GEOquery)
library(limma)
library(umap)
library(Seurat)
library(scAB)# load series and platform data from GEOthe.count = readRDS("thecount.RDS")Sys.setenv("VROOM_CONNECTION_SIZE" = 99999999)
gset <- getGEO("GSE165004", GSEMatrix =TRUE, getGPL=FALSE)
if (length(gset) > 1) idx <- grep("GPL16699", attr(gset, "names")) else idx <- 1
gset <- gset[[idx]]
pdata <- pData(gset)
pdata = pdata[which(pdata$title %>% str_detect(pattern = "Control|RPL")),]
group = rep("con",nrow(pdata))
names(group) = pdata$geo_accession
group[which(pdata$title %>% str_detect(pattern = "RPL"))] = "RPL"
the.count = the.count[,names(group)]sc_dataset = readRDS("sampled_seurat.rds")scAB_data <- create_scAB(sc_dataset,the.count,group)K <- select_K(scAB_data,K_max = 20,repeat_times = 5,verbose = T)
K %>% print(K)scAB_result <- scAB(Object=scAB_data, K=K)
sc_dataset <- findSubset(sc_dataset, scAB_Object = scAB_result, tred = 2)saveRDS(scAB_result,"scAB_result.RDS")
saveRDS(sc_dataset,"sc_dataset.RDS")

总结
scAB能够找到与临床标签相关的细胞,进而锁定某种细胞类型。这样一来,就可以把从前基于BULK数据的文章拿到单细胞水平,是基于公共数据完全可行的方式。结合更多的单细胞相关算法,例如单细胞基因调控网络,单细胞interaction,单细胞的分化分析,能够极大的丰富文章内容。

私聊我,提供专业的生信服务

RNA-seq与scRNA-seq数据的联合分析方法(bulk与单细胞数据联合分析)相关推荐

  1. oracle 数据导入 mysql_oracle数据库导出和oracle导入数据的二种方法(oracle导入导出数据)...

    这篇文章主要介绍了oracle导入导出数据的二种方法,利用PL/SQL Developer工具导出和利用cmd的操作命令导出的出方法,大家参考使用吧 方法一:利用PL/SQL Developer工具导 ...

  2. oracle数据库导出和oracle导入数据的二种方法(oracle导入导出数据)

    这篇文章主要介绍了oracle导入导出数据的二种方法,利用PL/SQL Developer工具导出和利用cmd的操作命令导出的出方法,大家参考使用吧 方法一:利用PL/SQL Developer工具导 ...

  3. oracle数据库导出灰色_oracle数据库导出和oracle导入数据的二种方法(oracle导入导出数据)...

    方法一:利用PL/SQL Developer工具导出: 菜单栏---->Tools---->Export Tables,如下图,设置相关参数即可: 方法二:利用cmd的操作命令导出,详情如 ...

  4. Nature Methods | 用深度多任务神经网络探索单细胞数据

    1.研究背景 在生物医学领域,分析大规模.高维度的单细胞数据,并且处理由分批实验效应和不同制备造成的数据噪声是当前的挑战:单细胞数据的大规模.高维度处理比较困难,需要考虑数据中不同程度的噪声.分批效应 ...

  5. vue 字典配置_vue遍历数据及字典的方法

    数组:数值 {{ item.message }} 数组:数值加索引 {{ item.msg }} {{index}} 字典:key value index {{ value }} {{key}} {{ ...

  6. 数据产品-数据分析方法论和分析方法介绍

    作为数据产品,前期的数据分析工作是必不可少的,只有经历过足够多的数据分析小活,对业务的认知和对底层数据的熟悉度才能够足够深入,足够支撑我们将底层的需求提升成为数据产品层面上的需求.而数据分析的方法层出 ...

  7. 家用电器用户行为分析与事件识别_数据产品指北:用户行为分析平台

    本篇主要介绍了一些在用户行为分析平台中应用最广的产品功能和分析方法,包括:用户分群.留存分析.转化分析.行为路径分析和事件分析,与大家分享,供大家一同参考和学习. 相比于传统行业,用户行为分析平台可能 ...

  8. 数据包络分析方法与maxdea软件_SEM常用的4种数据分析方法,让你的优化工作事半功倍!...

    数据分析在 SEM 中是最为基础的技能,说得简单点,数据分析就是为了发现问题,并为解决问题提供数据参考. 有经验的 SEMer 都知道,尽信数据则不如无数据.数据就躺在哪里,关键在分析之前,你之前要 ...

  9. 开课吧:数据分析师常用的分析方法有哪些?

    作为一名合格的数据分析师,掌握良好的分析方法论是必然需要掌握的,为了能够更好地掌握数据分析师,需要搞明白数据分析师常用的分析方法有哪些. 数据分析师常用的分析方法包括: PEST分析法 PEST为一种 ...

最新文章

  1. linux中why软件,why?why?why?
  2. CentOS6.8 搭建SVN并用钩子自动实现同步到web目录
  3. spring boot 邮件端口_1 分钟教会你用 Spring Boot 发邮件
  4. 线性Transformer应该不是你要等的那个模型
  5. 【.NET Core 3.0】框架之十二 || 跨域 与 Proxy
  6. KANO模型分析与使用
  7. OSPF报文分类与格式
  8. Qt 学习之路 :信号槽
  9. java ajax动态加载数据_java实现的highcharts与ajax结合动态实时获取数据更新图表
  10. 2021年腾讯研发大数据报告
  11. Python图像处理一:图像的读取、显示与存储
  12. K倍交叉验证配对t检验
  13. 白乔原创:实战软件DIY
  14. 完全k叉树(CCPC-Wannafly Comet OJ 夏季欢乐赛(2019) A)
  15. Jam的计数法--Java
  16. Black Hat Europe 2021议题解读:Wi-Fi Mesh中的安全攻击面
  17. 2021年3月最新彩虹发卡网完整运营版+高仿优云宝模板
  18. 股票购买接口委托下单c++代码
  19. Linux内核符号表
  20. 微信小程序界面设计小程序中的WXSS(css)选择器课程-伪类-:nth-child() 伪类

热门文章

  1. Python解题:Dream to EC-Final 梦回长安
  2. qDebug重定向(二)
  3. codevs1007
  4. 程序员私活收入:随随便便月入1万多,有的走向人生巅峰
  5. Web|Html页面编码原理
  6. 一张图看懂 USDT三种类型地址 Omni、ERC20、TRC20的区别
  7. 柏拉图对爱情和婚姻的说法
  8. linux邮箱发文件夹,Linux下使用mail命令发送邮件
  9. Matlab移除坐标轴边框
  10. 电竞数据对用户的帮助