单细胞亚群的标记基因可以迁移在不同数据集吗
最近看到了一个文献,标题是:《Single-cell analysis of the cellular heterogeneity and interactions in the injured mouse spinal cord》, 它里面的不同单细胞亚群各自的标记基因非常清晰,如下所示:
降维聚类分群也非常漂亮,如下所示:
这样的分析已经是超级简单的了,参考前面的例子:人人都能学会的单细胞聚类分群注释,读入这个文章的GSE162610数据集,进行标准的seurat流程即可。可以看到是如下所示的10个样品:
GSM4955359 uninj_sample1
GSM4955360 uninj_sample2
GSM4955361 uninj_sample3
GSM4955362 1dpi_sample1
GSM4955363 1dpi_sample2
GSM4955364 1dpi_sample3
GSM4955365 3dpi_sample1
GSM4955366 3dpi_sample2
GSM4955367 7dpi_sample1
GSM4955368 7dpi_sample2
可以分成4组。
首先处理GSE162610数据集
可以看到在多个分组样品里面,巨噬细胞和小胶质细胞都蛮清晰的界限:
不知道为什么我自己的处理后巨噬细胞和小胶质细胞的界限并没有作者文章给出来的图表那样的足够清晰,可能是我并没有去看作者的数据分析流程,仅仅是按照我自己的代码走了一遍。
降维聚类分群后,很容易根据文献里面的标记基因给出来各个亚群的生物学名字,然后对不同亚群,可以找这个数据集里面的特异性的各个亚群高表达量基因作为其标记基因:
接下来我就在思考,这样的实验设计在非常多的单细胞数据集都可以看到,因为在小鼠模型里面取脑部进行单细胞测序是很多疾病的首选。比如GSE182803这个数据集,它目前还没有关联到文献:
GSM5537262 Immune cells of healthy spinal cords
GSM5537264 Immune cells of injured spinal cords-3dpi
GSM5537265 Immune cells of injured spinal cords-14dpi
分成3个组别,我们同样的标准流程,参考前面的例子:人人都能学会的单细胞聚类分群注释,读入这个文章的GSE162610数据集,进行标准的seurat流程即可。
对GSE182803数据集进行同样的处理
可以看到:
这个数据集里面的 巨噬细胞和小胶质细胞也是很清晰的界限。
接下来把GSE162610的基因去GSE182803进行可视化
在 GSE182803 数据集的工作目录下面, 运行如下行的代码:
rm(list=ls())
library(Seurat)
library(ggplot2)
library(clustree)
library(cowplot)
library(dplyr)
library(stringr)
getwd()
setwd("3-cell")
sce.all=readRDS( "../2-harmony/sce.all_int.rds")
colnames(sce.all@meta.data)
load('../GSE162610.markers.Rdata')
library(dplyr)
top10 <- sce.markers %>% group_by(cluster) %>% top_n(10, avg_log2FC)
top10=top10[!duplicated(top10$gene),]
selected_genes = split(top10$gene,top10$cluster)
names(selected_genes)
我们这里仅仅是考虑 巨噬细胞和小胶质细胞 即可 :
> names(selected_genes)
[1] "Microglia" "Ependymal" "endo" "Macrophage" "24"
[6] "Monocyte" "19" "Pericyte" "Astrocyte" "OPC"
[11] "Neutrophil" "Fibrolast" "9" "Oligodendrocyte"
代码如下所示:
selected_genes=selected_genes[c("Macrophage","Microglia" )]
load('phe-by-markers.Rdata')
sce.all@meta.data = phe
colnames(sce.all@meta.data)
p3 <- DotPlot(object = sce.all, features = selected_genes,
group.by = 'celltype',
assay = "RNA") +
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=0.5)
)+theme(
strip.text= element_text(angle = 90, vjust = 0.5, hjust=0.5)
)
p3
ggsave(p3,filename = "check_GSE162610_markers.pdf",
units = "cm",width = 50,height = 20)
可以看到 巨噬细胞和小胶质细胞 仍然是具有比较清晰的分界线哦 :
说明 巨噬细胞和小胶质细胞各自相对标记基因在不同数据集都是具有可区分能力的。
如果你对单细胞数据分析还没有基础认知,可以看基础10讲:
最基础的往往是降维聚类分群,参考前面的例子:人人都能学会的单细胞聚类分群注释
如果你对单细胞转录组研究感兴趣,但又不知道如何入门,也许你可以关注一下下面的课程
看完记得顺手点个“在看”哦!
长按扫码可关注