55ca7d05f612c1edaf4626ec1dc5db6c.png
官网上已经将之前适配于Seurat v4版本的代码删了,有需要的从这里下载吧
通过网盘分享的文件:paramSweep_v4_DF.R
链接: https://pan.baidu.com/s/1V1fh5CDCrc95QVuq9Cixwg?pwd=qsbt 提取码: qsbt
如下是运行流程~
source('./paramSweep_v4_DF.R')
sweep.res.list_scdata1 <- paramSweep_v4(scdata1, PCs = 1:25, sct = FALSE)
sweep.stats_scdata1 <- summarizeSweep(sweep.res.list_scdata1, GT = FALSE)
pdf("./2.DF_PK.pdf")
bcmvn_scdata1 <- find.pK(sweep.stats_scdata1)
dev.off()
mpK<-as.numeric(as.vector(bcmvn_scdata1$pK[which.max(bcmvn_scdata1$BCmetric)]))
mpK ##0.03
annotations <- scdata1@meta.data$seurat_clusters
homotypic.prop <- modelHomotypic(annotations)
DoubletRate = ncol(scdata1)*8*1e-6 #按每增加1000个细胞,双细胞比率增加千分之8来计算
nExp_poi <- round(DoubletRate*length(scdata1$seurat_clusters)) #最好提供celltype,而不是seurat_clusters。
# 计算双细胞比例
nExp_poi.adj <- round(nExp_poi*(1-homotypic.prop))
scdata1 <- doubletFinder_v4(scdata1, PCs = 1:25, pN = 0.25, pK = mpK, nExp = nExp_poi.adj, reuse.pANN = FALSE, sct = F)
scdata1@meta.data[,"DF_hi.lo"] <- scdata1@meta.data$DF.classifications_0.25_0.03_43834
scdata1@meta.data$DF_hi.lo[which(scdata1@meta.data$DF_hi.lo == "Doublet" & scdata1@meta.data$DF.classifications_0.25_0.03_43834 == "Singlet")] <- "Doublet-Low Confidience"
scdata1@meta.data$DF_hi.lo[which(scdata1@meta.data$DF_hi.lo == "Doublet")] <- "Doublet-High Confidience"
table(scdata1@meta.data$DF_hi.lo)
## 结果展示,分类结果在pbmc@meta.data中
png("./2_doubletFinder.png",2500,1800,res=300)
DimPlot(scdata1, reduction = "umap", group.by ="DF_hi.lo",cols =c("black","red","gold"))
dev.off()
save(scdata1,file=paste0(out_path,'/','scdata1_DF.Rdata'))