10X单细胞转录组测序—细胞周期分析

此文章可帮助你查看自己的数据受否受细胞周期的影响,并以降维图的形式清晰明了的展示。

文章中其中用到的文件获取方式https://pan.baidu.com/s/1HCsHRXNX9Il8u8RIPXSEug?pwd=2626

在进行单细胞分析时,由于细胞会处于各种细胞周期,此时不同类型地细胞可能因此表达相同细胞周期相关地基因,这些细胞周期相关基因会影响降维地效果,因此有必要进行细胞周期分析,将细胞周期相关地基因通过一定地方法回归掉,以此降低细胞周期相关基因对降维地影响。

10X单细胞转录组测序—常规流程 (qq.com)

在我之前的文章中有包含细胞周期分析,甚至在刚开始的时候就已经将周期相关基因全部删掉了,在这里再做一个详细的介绍。

在进行完高变基因分析后,可将得到的seurat对象PBMC.all保存成PBMC.all2,用PBMC.all2进行以下分析,分析完再按照原文章中的流程继续分析。

首先进行一遍最普通的降维分析

PBMC.all2 <- ScaleData(PBMC.all,features = rownames(PBMC.all),split.by = "orig.ident")
PBMC.all2 <- RunPCA(PBMC.all2, npcs=30,features = VariableFeatures(PBMC.all2))
PBMC.all2 <- RunHarmony(PBMC.all2,'orig.ident')
PBMC.all2 <- FindNeighbors(PBMC.all2,reduction = "harmony",dims = 1:30)
PBMC.all2 <- FindClusters(object = PBMC.all2,resolution = 1)
PBMC.all2 <- RunTSNE(PBMC.all2,dims = 1:30,reduction = "harmony")
PBMC.all2 <- RunUMAP(PBMC.all2,dims = 1:30,reduction = "harmony")

细胞周期分析

由于我的样本是小鼠样本,基因名为小写格式,但seurat包里只提供了人类的大写的细胞周期基因,需要进行转化,这里你可以在文章开始处直接获取mouse_cell_cycle_genes.rds,然后进行周期分析。

mouse_cell_cycle_genes <- readRDS("E:/project/celldex数据库/mouse_cell_cycle_genes.rds")
s.genes=mouse_cell_cycle_genes[[1]]
g2m.genes=mouse_cell_cycle_genes[[2]]
PBMC.all2 <- CellCycleScoring(PBMC.all2, s.features = s.genes, g2m.features = g2m.genes)
PBMC.all2@meta.data  %>% ggplot(aes(S.Score,G2M.Score))+geom_point(aes(color=Phase))+
  theme_minimal()

查看细胞周期的分布

DimPlot(PBMC.all2,reduction = "umap" ,group.by = "Phase")
DimPlot(PBMC.all2,reduction = "tsne" ,group.by = "Phase")
FeaturePlot(PBMC.all2,features = c("Pcna","Mki67"),reduction = "umap")
FeaturePlot(PBMC.all2,features = c("Pcna","Mki67"),reduction = "tsne")

不出意外的话,不同周期会区分的很明显,且相关基因也会分布不均匀。

去除细胞周期的影响

PBMC.all2 = ScaleData(PBMC.all2, vars.to.regress = c("S.Score", "G2M.Score"),
                     features = rownames(PBMC.all2),split.by = "orig.ident")
PBMC.all2 <- RunPCA(PBMC.all2, npcs=30,features = VariableFeatures(PBMC.all2))
PBMC.all2 <- RunHarmony(PBMC.all2,'orig.ident')
PBMC.all2 = FindNeighbors(PBMC.all2,reduction = "harmony",dims = 1:30)
PBMC.all2 <- FindClusters(object = PBMC.all2,resolution = 1)
PBMC.all2 <- RunTSNE(PBMC.all2,dims = 1:30,reduction = "harmony")
PBMC.all2 <- RunUMAP(PBMC.all2,dims = 1:30,reduction = "harmony")

去除后周期分布

DimPlot(PBMC.all2, reduction = "umap",group.by = "Phase")
DimPlot(PBMC.all2, reduction = "tsne",group.by = "Phase") 
FeaturePlot(PBMC.all2,features = c("Pcna","Mki67"),reduction = "umap")
FeaturePlot(PBMC.all2,features = c("Pcna","Mki67"),reduction = "tsne")

不出意外的话会发现周期分布变均匀了,且基因的分布也会变均匀,但也会出现去除效果不好的现象,实属正常,不会有非常完美的去除效果,总会有瑕疵存在。若细胞周期基因不在研究范围内,可直接将细胞周期相关基因删掉。删除方法如下:

dim(PBMC.all2)
PBMC.all2 <- PBMC.all2[!grepl("^mt-", rownames(PBMC.all2)), ]
dim(PBMC.all2)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值