MarioniLab / DropletUtils

Clone of the Bioconductor repository for the DropletUtils package.
https://bioconductor.org/packages/devel/bioc/html/DropletUtils.html
56 stars 27 forks source link

insufficient unique points for computing knee/inflection points #71

Open Rohit-Satyam opened 3 years ago

Rohit-Satyam commented 3 years ago

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?

LTLA commented 3 years ago

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.