DoubletFinder去除双细胞(Seurat v4版本)

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')) 

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容