目录
提取细胞亚群
SCTransform-harmony技术路线
①亚群SCTransform标准化
②harmony去批次
这里对上一章的内容进行补充:
Seurat-SCTransform与harmony整合学习-CSDN博客
提取细胞亚群
rm(list = ls())
library(Seurat)#好像先后需要先后加载
library(patchwork)
library(dplyr)
library(ggplot2)
library(sctransform)
#library(SeuratData) #加载失败
library(ifnb.SeuratData)##数据源于来自于SeuratData包的ifnb数据集
data("ifnb")
ifnb=UpdateSeuratObject(ifnb)
kp = ifnb$seurat_annotations %in% c('CD14 Mono' , 'CD16 Mono')
ifnb=ifnb[,kp]
SCTransform-harmony技术路线
①亚群SCTransform标准化
sce <- SCTransform(ifnb,verbose = F)
sce <- RunPCA(sce,verbose = F)
sce <- RunUMAP(sce, dims = 1:20)
p1 = DimPlot(sce,group.by = 'seurat_annotations') + DimPlot(sce,group.by = 'orig.ident')
p1
②harmony去批次
library(harmony)
sce <- RunHarmony(sce, "orig.ident")
sce <- RunUMAP(sce, dims = 1:25, reduction = "harmony")
p2 = DimPlot(sce,group.by = 'seurat_annotations') + DimPlot(sce,group.by = 'orig.ident')
p2
左侧仅仅SCTransform标准化;右侧SCTransform+harmony去批次
也就是说,两个样品的髓系淋巴细胞有样品特异性,但是我们的harmony整合可以让两个样品cd16单核在UMAP的二维可视化图靠近,以及两个样品的一小撮cd14单核在UMAP的二维可视化图靠近,但是很明显,STIM组里面的cd14单核还是有3个顽强的独立的亚群,是它比较特有的。
SCTransform真的能完美替代Seurat早期的3个函数吗 (qq.com)
第一层次降维聚类分群的时候,做SCTransform确实是可以代替早期的 NormalizeData(), ScaleData(), FindVariableFeatures()三个函数,但是在具体的单细胞亚群细分的时候,个人觉得SCTransform表现并不好,可能是因为它是针对完整的单细胞表达量矩阵设计的?或者说应该是在具体的每个样品内部跑SCTransform后然后再多个样品合并?