Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >各个单细胞亚群独立在两个分组做差异分析

各个单细胞亚群独立在两个分组做差异分析

作者头像
生信技能树jimmy
发布于 2022-06-13 01:51:16
发布于 2022-06-13 01:51:16
9.3K00
代码可运行
举报
文章被收录于专栏:单细胞天地单细胞天地
运行总次数:0
代码可运行

前些天我们的单细胞学徒培养有小伙伴分享了文章;在 JCI Insight 2022 https://doi.org/10.1172/jci.insight.152616 ,里面对第一次降维聚类分群后的各个单细胞亚群独立在两个分组做差异分析 ,如下所示:

各个单细胞亚群独立在两个分组做差异分析

可以看到,每个单细胞亚群都有自己的差异分析火山图,会议上有人提问这个分析如何做。其实主要是大家可能是初次接触生物信息学就是单细胞数据处理,所以基础知识有点欠缺。它就是普通的表达量矩阵分析而已,我七八年前就写过系列笔记,公众号推文在:

我们这里以大家熟知的pbmc3k数据集为例。大家先安装这个数据集对应的包,并且对它进行降维聚类分群,参考前面的例子:人人都能学会的单细胞聚类分群注释

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
# 0.安装R---- 
# InstallData("pbmc3k") 

library(SeuratData) #加载seurat数据集  
getOption('timeout')
options(timeout=10000)
#InstallData("pbmc3k")  
data("pbmc3k")  
sce <- pbmc3k.final   
library(Seurat)
table(Idents(sce))
DimPlot(sce,label = T)

这个时候,因为它pbmc3k数据集并没有分组,所以我们没办法做差异分析。不过我们可以简单的模拟一个分组。如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制

sce$celltype = Idents(sce)
sce$group = sample(1:2,ncol(sce),replace = T)
table(sce$celltype,sce$group )


# 如下所示,两个随机赋予的分组,每个分组里面的都是有这些不同单细胞亚群
  Naive CD4 T  349 348
  Memory CD4 T 231 252
  CD14+ Mono   224 256
  B            186 158
  CD8 T        135 136
  FCGR3A+ Mono  81  81
  NK            66  89
  DC            12  20
  Platelet       9   5

下面对它们进行批量差异分析:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制

Idents(sce) = paste0('c',sce$group )
table(Idents(sce))
degs = lapply(unique(sce$celltype), function(x){
  FindMarkers(sce[,sce$celltype==x],ident.1 = 'c1',
              ident.2 = 'c2')
})
x=degs[[1]]
do.call(rbind,lapply(degs, function(x){
  table(x$avg_log2FC > 0 )
}))

值得注意的是这个FindMarkers函数并不是最好的单细胞转录组表达量矩阵的差异分析方法,我这里仅仅是举例哦!

可以看到,如果是以为 avg_log2FC 标准,这个时候很容易得到假阳性的差异基因:

FindMarkers函数的结果

其实我们更应该关心的是 "pct.1" 和 "pct.2" 的差异,这个也是各个单细胞亚群特异性高表达量基因的金标准,不过跟我们这个时候的差异分析不太一样的需求哦,需要自己多思考。

另外,这个时候因为我们是随机赋值的两个分组,所以差异分析理论上就没有意义,所以"p_val_adj" 在这里基本上没有统计学显著性。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2022-06-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 单细胞天地 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
基于非负矩阵分解的单细胞降维聚类分群
可以看到,在CD4和CD8的T细胞的各自矩阵内部降维聚类分群,这6个细分亚群都并不是泾渭分明的界限。听完分享才知道,原来作者这个时候的细分亚群其实并不关心它们内部是不是有不同的独立的单细胞亚群,仅仅是有这6个不同状态或者说发挥不同功能单细胞亚群。而区分它们的手段是非负矩阵分解,并不需要有很清晰的界限,只需要各个亚群的核心功能基因集有差异即可。
生信技能树
2022/03/03
3.1K0
基于非负矩阵分解的单细胞降维聚类分群
美化你的单细胞亚群比例图
最近,郑州大学第一附属医院的史阳同学无私的分享了他对这些基础函数的改造,颜值说不上巅峰,但打败基础函数是没有问题的, 同时也算是抛砖引玉吧,希望广大生信技能树粉丝们都投稿分享自己的创作,投稿请发邮件到 jmzeng1314@163.com
生信技能树
2022/03/03
1.3K0
美化你的单细胞亚群比例图
各个单细胞亚群的差异基因数量投射到umap图
我简单读了一下文章,其实就降维聚类分群后,每个单细胞亚群在两个分组简单的做一下差异分析,有多少个单细胞亚群就做多少次差异分析,差异分析的上下调基因数量就是umap图里面的每个细胞的颜色情况。
生信技能树jimmy
2022/06/13
2.9K0
各个单细胞亚群的差异基因数量投射到umap图
美化你的单细胞各个亚群特异性高表达基因小提琴图
最近,郑州大学第一附属医院的史阳同学无私的分享了他对这些基础函数的改造,颜值说不上巅峰,但打败基础函数是没有问题的, 同时也算是抛砖引玉吧,希望广大生信技能树粉丝们都投稿分享自己的创作,投稿请发邮件到 jmzeng1314@163.com
生信技能树
2022/03/03
2.8K0
美化你的单细胞各个亚群特异性高表达基因小提琴图
单细胞——从降维聚类分群、细胞命名、到批量富集分析,一文打通GSE104154博来霉素小鼠模型单细胞数据
注意:这个数据使用了ensemble id作为基因名,后续需要换为gene symbol
生信菜鸟团
2023/09/09
3.5K0
单细胞——从降维聚类分群、细胞命名、到批量富集分析,一文打通GSE104154博来霉素小鼠模型单细胞数据
pyscenic的转录因子分析结果展示之5种可视化
但是在R里面跑这个,超级耗时,所以有 使用pyscenic做转录因子分析 和 没想到自己会放弃conda(docker镜像的pyscenic做单细胞转录因子分析),大家可以按需取用。
生信技能树jimmy
2022/03/14
4.6K1
pyscenic的转录因子分析结果展示之5种可视化
两次单细胞差异分析后的结果进行相关性散点图绘制
也就是说,它并不是拿两次差异分析各自统计学显著的基因的交集去绘图,而是把在两次差异分析至少有一次是统计学显著的基因拿过去。(说起来一样的绕口,让我们看看后面的代码)
生信技能树jimmy
2022/01/17
3.3K0
两次单细胞差异分析后的结果进行相关性散点图绘制
10x官网下载pbmc3k数据集走RNA速率上下游分析实战
当时对很多测试项目都是拿到了loom文件,就可以进行下游 velocyto.R 这个R包进行后续统计可视化啦!准备第二天就讲解velocyto.R 这个R包用法,但是却忘记了,最近看到有小伙伴在该推文下面赞赏200元催更,激起了我的创作动力!
生信技能树
2022/07/26
1.5K0
10x官网下载pbmc3k数据集走RNA速率上下游分析实战
单细胞测序—标准流程代码(3)—marker 基因富集分析_差异基因
过了很久之后才想起来继续整理单细胞测序的标准分析流程。书接上回单细胞测序—标准流程代码(2) — 标记基因与细胞注释,这篇帖子主要关注的是富集分析。
sheldor没耳朵
2024/09/04
8500
单细胞测序—标准流程代码(3)—marker 基因富集分析_差异基因
单细胞热图我要整整齐齐
我们以大家熟知的pbmc3k数据集为例。大家先安装这个数据集对应的包,并且对它进行降维聚类分群,参考前面的例子:人人都能学会的单细胞聚类分群注释 ,而且每个亚群找高表达量基因,都存储为Rdata文件。标准代码是:
生信技能树
2022/07/26
2.6K0
单细胞热图我要整整齐齐
两个不同单细胞亚群差异分析,合并一定要做火山图
这个是单细胞自身特性导致,它两个分组的细胞数量太多,大概率会导致p值过于显著,无限接近于0。我们以 SeuratData包里面的 pbmc3k 数据集举例说明:
生信技能树
2021/12/27
1.6K0
两个不同单细胞亚群差异分析,合并一定要做火山图
单细胞各个亚群特异性高表达基因的数据库注释(包括GO,KEGG,ReactomePA)
拿到了一个单细胞表达量矩阵,默认需要进行: 单细胞聚类分群注释 ,如果你对单细胞数据分析还没有基础认知,可以看基础10讲:
生信技能树
2022/12/16
1.4K0
单细胞各个亚群特异性高表达基因的数据库注释(包括GO,KEGG,ReactomePA)
拟时序分析就是差异分析的细节剖析
很多小伙伴在后台表示对单细胞数据分析里面的拟时序分析不理解,恰好最近看到了一个超级清晰明了的展现拟时序分析的作用的文献,分享给大家。它完美的展现了差异分析为什么不够,为什么拟时序分析就是差异分析的细节剖析。
生信技能树
2021/12/27
3K0
拟时序分析就是差异分析的细节剖析
一个完美的单细胞亚群随机森林分离器是如何炼成的
虽然两个CD4的T细胞其实大量共享高表达量基因,两个单核细胞也是如此,而CD8和NK也是如此,所以它们的AddModuleScore打分也是有些微混杂,不过最重要的问题是我们的可视化并没有体现出来AddModuleScore打分是否是足够好的分类器。
生信技能树
2022/12/16
6210
一个完美的单细胞亚群随机森林分离器是如何炼成的
单细胞亚群该细分到什么程度呢?
参考我前面介绍过 CNS图表复现08—肿瘤单细胞数据第一次分群通用规则,这3大单细胞亚群构成了肿瘤免疫微环境的复杂。绝大部分文章都是抓住免疫细胞亚群进行细分,包括淋巴系(T,B,NK细胞)和髓系(单核,树突,巨噬,粒细胞)的两大类作为第二次细分亚群。但是也有不少文章是抓住stromal 里面的 fibro 和endo进行细分,并且编造生物学故事的。
生信技能树
2024/11/21
2240
单细胞亚群该细分到什么程度呢?
在umap图上面叠加基因表达量
这个umap里面,叠加了FeaturePlot看一个基因表达信息。文献出处是:《IL-11 is a crucial determinant of cardiovascular fibrosis》,作者其实就是想展现IL-11这个基因呢,在其中一个fibroblasts细胞亚群里面是表达量比较高!
生信技能树
2022/03/03
1.1K0
在umap图上面叠加基因表达量
单细胞亚群绝对数量和相对比例的探索
前面我在:单细胞转录组降维聚类分群过滤基因和过滤细胞的区别 介绍了文献,题目为“Revealing the transcriptional heterogeneity of organ-specific metastasis in human gastric cancer using single-cell RNA Sequencing”。通讯作者是浙江大学的范骁辉教授,于2022年发表在Clin Transl Med杂志(IF=10.6),这个胃癌单细胞数据集GSE163558的单细胞转录组在降维聚类分群后,就可以看细胞比例的变化情况。
生信技能树
2024/11/21
1620
单细胞亚群绝对数量和相对比例的探索
无论怎么做都是错误的单细胞水平相关性分析
不过,我这里可能需要提醒大家一定要注意, 如果是真正的单细胞水平相关性分析,无论怎么做都是不合理的。比如大家如果使用代码绘制任意两个基因在单细胞转录组数据里面的相关性散点图,就出现这种多个点排列成一条一条:
生信技能树
2024/11/21
5160
无论怎么做都是错误的单细胞水平相关性分析
各个单细胞亚群的特异性基因集合的打分能准确划分其亚群吗?
而实际情况下,不同层次的细胞亚群的界限容忍度就不一样。比如肿瘤相关单细胞数据集常规分析都是拿到表达量矩阵后的第一层次降维聚类分群通常是:
生信技能树
2022/12/16
3730
各个单细胞亚群的特异性基因集合的打分能准确划分其亚群吗?
速度上吊打FindAllMarkers的单细胞亚群特异性高表达基因查询算法
但是, 最开始我们得到几十个单细胞亚群的时候,就需要对每个亚群找一下各自的单细胞亚群特异性高表达基因,通常是使用Seurat包的FindAllMarkers函数,这个函数的帮助文档写的是:Finds markers (differentially expressed genes) for each of the identity classes in a dataset ,默认使用 Wilcoxon Rank Sum test (default) 方法。
生信技能树
2022/06/08
7.3K0
速度上吊打FindAllMarkers的单细胞亚群特异性高表达基因查询算法
推荐阅读
相关推荐
基于非负矩阵分解的单细胞降维聚类分群
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验