Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

SoupX error #160

Open
angelica-varesi opened this issue Jun 18, 2024 · 0 comments
Open

SoupX error #160

angelica-varesi opened this issue Jun 18, 2024 · 0 comments

Comments

@angelica-varesi
Copy link

Hello,

I am running SoupX on my 10x multiome samples, using the following code:

#List sample names from cellranger-arc directories, excluding #6 (sps-4957439)
samples <- list.dirs("/dir/cellranger-arc_count/", recursive = F, full.names = F)[-6]

#Reconstitute paths, h5_paths, etc. as lists names as the sample names
out_paths <- as.list(paste0(
list.dirs("/dir/cellranger-arc_count/", recursive = F, full.names = T)[-c(6)],
"/outs/"
))
names(out_paths) <- samples

h5_paths <- as.list(paste0(
list.dirs("/dir/cellranger-arc_count/", recursive = F, full.names = T)[-c(6)],
"/outs/filtered_feature_bc_matrix.h5"
))
names(h5_paths) <- samples

frag_paths <- as.list(paste0(
list.dirs("/dir/cellranger-arc_count/", recursive = F, full.names = T)[-c(6)],
"/outs/atac_fragments.tsv.gz"
))
names(frag_paths) <- samples

meta_paths <- as.list(paste0(
list.dirs("/dir/cellranger-arc_count/", recursive = F, full.names = T)[-c(6)],
"/outs/per_barcode_metrics.csv"
))
names(meta_paths) <- samples

counts_list <- suppressWarnings(lapply(h5_paths, Read10X_h5))

soup_channels <- lapply(out_paths, SoupX::load10X, verbose = F)

soup_channels[[1]] <- SoupX::autoEstCont(soup_channels[[1]], verbose = F)
soup_channels[[2]] <- SoupX::autoEstCont(soup_channels[[2]], verbose = F)
soup_channels[[3]] <- SoupX::autoEstCont(soup_channels[[3]], verbose = F)
soup_channels[[4]] <- SoupX::autoEstCont(soup_channels[[4]], verbose = F)
soup_channels[[5]] <- SoupX::autoEstCont(soup_channels[[5]], verbose = F)
The code runs fine for two of the samples ([[1]] and [[3]]), however for two of the remaining samples, I get the following error message:

Error in SoupX::autoEstCont(soup_channels[[2]], verbose = F): No plausible marker genes found. Is the channel low complexity (see help)? If not, reduce tfidfMin or soupQuantile
Traceback:

  1. SoupX::autoEstCont(soup_channels[[2]], verbose = F)
  2. stop("No plausible marker genes found. Is the channel low complexity (see help)? If not, reduce tfidfMin or soupQuantile")
    Whilst for the last sample, the code runs but I get this:

Warning message in SoupX::autoEstCont(soup_channels[[5]], verbose = F):
"Fewer than 10 marker genes found. Is this channel low complexity (see help)? If not, consider reducing tfidfMin or soupQuantile"
The samples in question are indeed expected to have lower "complexity" i.e. heterogeneity of cell types within them, compared to the samples that ran normally; so I would expect less variability in gene expression between clusters in those samples. Should I ignore these messages and simply not use SoupX on the samples that failed, or what is the best solution in this case? Also, what would the best solution be for the "borderline" sample where the algorithm only found < 10 marker genes?

Thanks for your time!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant