DropletUtils
DropletUtils copied to clipboard
insufficient unique points for computing knee/inflection points
Hi Aron
I just started my Single Cell analysis and was trying to make knee plots. I read the 10X data using read10xCounts function performed filtering using the following function:
filter <- function(sce){
keep_features <- rowSums(counts(sce) > 0) > 0
sobj <- sobj[keep_features, ]
return(sobj)
}
sample1_sce <-filter(sample1_sce)
#before filtering I had the following dimension of sce object
#5712 6794880
#after filtering the dimension of this object becomes
#1157 6794880
I presume this is the reason for the failure of barcodeRanks() function. Is there a workaround? Should I not filter using the above function?
The filtering on features is mostly irrelevant here. (Though it is weird that you only have 6k features before filtering, I would have expected 30-50k features for a typical mammalian genome.) Instead, I'm guessing that the real problem is that you don't have enough barcodes with total counts above 100. You could try to set lower= to a lower value, but if you don't have many barcodes with more than 100 counts, some questions have to be asked about the quality of your data.
The features were nearly 6K because we were working with single-cell data from plasmodium that have 5700 genes. I am closing this issue since now we know that number of UMIs are usually low in parasites in their early time points of life cycle as can be seen in the image below
Source: https://www.biorxiv.org/content/10.1101/2022.01.27.476788v1.full.
Also since in plasmodium the genes are expressed "Just in time" whenever required, very few essential genes are expressed at early time points. Thanks for your recommendations @LTLA this was a marginal case and we will take your suggestion and set lower to much lower value or set retain = Inf.