Entering edit mode
6 months ago
s
•
0
Hi,
I am new to immunology and do not have experience with the different cell types, biology, etc. I was performing QC on a dataset that had condition and control samples merged in Seurat v5. As part of QC I filtered cells which had >10% mitochondrial expression, and nFeature_RNA <200 & nFeature_RNA >2500.
I then used scDblFinder
to find doublets (code at the bottom).
I have 3 questions:
- Is nFeature_RNA > 2500 a good threshold for immune cells? Should the threshold be modified to account for certain cell types?
- I had 220k cells, and
scDblFinder
reported nearly 70k cells to be doublets AFTER mitochondrial and nFeature_RNA filtering, which seems like an incredibly high number of cells. Is this package useful for immune cells? Are there other settings recommended for this cell type? Most of the markers for the doublet clusters seem to be from plasma cells, some maybe are actual doublets, but are plasma cells known to give false positives? - Not related to doublets, but I have a cluster with ~1200 cells (~0.53% of cells - out of 220k). I am interested in this cell type, but is the cluster considered big enough to draw meaningful conclusions from? The cell type is relatively hard to capture using single cell.
I appreciate any input and thank you!
Code:
scDblFinder
code I used by converting my seurat object to sce (I had to use JoinLayers()
since I had multiple samples, that were seurat objects and I merged them into one):
#Doublet detection using scDblfinder
data.combined <- readRDS("../RDS/data_45_umap_32_clusters.RDS")
DefaultAssay(data.combined) <- "RNA"
set.seed(100)
sce <- data.combined
sce %<>% JoinLayers() %>% as.SingleCellExperiment() #Since there are multiple layers and sce needs to be 1
sce <- scDblFinder(sce)
table(sce$scDblFinder.class)
sce@colData@listData %>% as.data.frame() %>% head()
meta_scdblfinder <- sce@colData@listData %>% as.data.frame() %>%
dplyr::select(starts_with('scDblFinder')) # 'scDblFinder.class')
head(meta_scdblfinder)
#Add results to object
meta_scdblfinder <- sce@colData@listData %>% as.data.frame() %>%
dplyr::select(starts_with('scDblFinder')) # 'scDblFinder.class')
head(meta_scdblfinder)
rownames(meta_scdblfinder) <- sce@colData@rownames
head(meta_scdblfinder)
data.combined <- AddMetaData(object = data.combined, metadata = meta_scdblfinder %>% dplyr::select('scDblFinder.class'))