查看原文
其他

其实在教程:为什么CD4阳性T细胞并不是表达CD4最多的,分享过这个技巧,不过标题不够醒目,所以大家很难记忆它,换个马甲再来一次, 这次很明确的告诉你是在在umap图上面叠加基因表达量。

就是为了回答交流群小伙伴的提问:

 

这个umap里面,叠加了FeaturePlot看一个基因表达信息。文献出处是:《IL-11 is a crucial determinant of cardiovascular fibrosis》,作者其实就是想展现IL-11这个基因呢,在其中一个fibroblasts细胞亚群里面是表达量比较高!

仍然是以大家熟知的pbmc3k数据集为例

大家先安装这个数据集对应的包,并且对它进行降维聚类分群,参考前面的例子:人人都能学会的单细胞聚类分群注释  ,而且每个亚群找高表达量基因,都存储为Rdata文件。

# 0.安装R包 ----
# devtools::install_github('caleblareau/BuenColors')
# utils::install.packages(pkgs = "ggstatsplot")
# InstallData("pbmc3k") 

# 1.加载R包和测试数据 ----
rm(list = ls())
library(SeuratData) #加载seurat数据集  
getOption('timeout')
options(timeout = 10000)
data("pbmc3k")  
sce <- pbmc3k.final  
library(Seurat)

DimPlot(sce,reduction = "umap",label = TRUE
unique(Idents(sce))
sce$celltype = Idents(sce)

# 2.单细胞分析基本流程 ----
# 主要是拿到 tSNE和Umap的坐标,因为默认的 pbmc3k.final 是没有的
sce <- NormalizeData(sce, normalization.method =  "LogNormalize",  
                     scale.factor = 1e4
sce <- FindVariableFeatures(sce, 
                            selection.method = "vst", nfeatures = 2000)  
sce <- ScaleData(sce) 
sce <- RunPCA(object = sce, pc.genes = VariableFeatures(sce))  
sce <- FindNeighbors(sce, dims = 1:15)
sce <- FindClusters(sce, resolution = 0.8
set.seed(123)
sce <- RunTSNE(object = sce, dims = 1:15, do.fast = TRUE
sce <- RunUMAP(object = sce, dims = 1:15, do.fast = TRUE)
DimPlot(object = sce, reduction = "umap",label = TRUE)   
# 3.定义分组信息 ---- 
Idents(sce) = sce$celltype

# 4.寻找各个单细胞亚群的特征性高表达量基因----
sce.markers <- FindAllMarkers(object = sce, 
                              only.pos = TRUE,
                              min.pct = 0.25
                              thresh.use = 0.25

save(sce, sce.markers, file = 'tmp.Rdata')

接下来开启绘图模式

在前面保存好了的seurat对象什么,可以提取表达量矩阵,以及降维后的坐标,就很容易自定义绘图啦,代码如下所示:

sce.all=sce
gene='CD4'
p1=DimPlot(sce.all,reduction = 'umap',label = T,repel = T,
           group.by = 'celltype')
pos=sce.all@reductionsRNA@counts[gene,]>1,]
head(pos)
p1+geom_point(aes(x=UMAP_1,y=UMAP_2), 
              shape = 21, colour = "black",
              fill = "blue", size = 0.5,  
              data = as.data.frame(pos))

效果如下所示:

在umap图上面叠加基因表达量

可以看到的是CD4这个基因并不是在CD4的T细胞特异性表达哦,在各种Mono细胞也是有不少的表达量哈。

这样的基础认知,也可以看单细胞的基础10讲:

最基础的往往是降维聚类分群,参考前面的例子:人人都能学会的单细胞聚类分群注释

写在文末

我在《生信技能树》,《生信菜鸟团》,《单细胞天地》的大量推文教程里面共享的代码都是复制粘贴即可使用的, 有任何疑问欢迎留言讨论,也可以发邮件给我,详细描述你遇到的困难的前因后果给我,我的邮箱地址是 jmzeng1314@163.com

如果你确实觉得我的教程对你的科研课题有帮助,让你茅塞顿开,或者说你的课题大量使用我的技能,烦请日后在发表自己的成果的时候,加上一个简短的致谢,如下所示:

We thank Dr.Jianming Zeng(University of Macau), and all the members of his bioinformatics team, biotrainee, for generously sharing their experience and codes.

十年后我环游世界各地的高校以及科研院所(当然包括中国大陆)的时候,如果有这样的情谊,我会优先见你。



您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存