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

xcell reporting all zeros #87

Open
RichardCorbett opened this issue Feb 11, 2022 · 5 comments
Open

xcell reporting all zeros #87

RichardCorbett opened this issue Feb 11, 2022 · 5 comments
Labels
bug Something isn't working

Comments

@RichardCorbett
Copy link

Hi folks,

I am using the exact same code and environment listed in
#86

When I run using the 'xcell' subcommand I get the following error:

>>> Running xcell
  Error in if (dim(expr)[1] < 5000) { : argument is of length zero
  Calls: deconvolute ... eval -> eval -> <Anonymous> -> rawEnrichmentAnalysis
  Execution halted

Based on what I learned in the cibersort testing I tried using 2 columns of data instead of 1, which then ran to completion. However, It seems all the reported values are 0s. In parallel runs with the same data I get non-zero values in my quantiseq, MCPcounter, epic, and now cibersort runs as well..

Output:

"","cell_type","TPM"
"1","Myeloid dendritic cell activated",0
"2","B cell",0
"3","T cell CD4+ memory",0
"4","T cell CD4+ naive",0
"5","T cell CD4+ (non-regulatory)",0
"6","T cell CD4+ central memory",0
...

I have tested this on 5 total samples and all give the same set of 0 values. I have some test data derived from a cell line I can share with you if it helps get to the bottom of it.
thanks!

@RichardCorbett RichardCorbett added the bug Something isn't working label Feb 11, 2022
@grst
Copy link
Collaborator

grst commented Feb 14, 2022

For xCell it's a different story, it will not generate meaningful results for a single (or few) samples. From our
benchmark paper:

A limitation of TIMER and xCell is that the results of these methods depend on all samples that are analyzed in a single run, i.e. the same sample can have different scores when submitted together with different other samples. In particular, xCell uses the variability among the samples for a linear transformation of the output score. TIMER uses COMBAT (Johnson et al., 2007) to merge the input samples with reference profiles. This is particularly problematic with small datasets and hampers comparability and interpretability of the score. Moreover, xCell does not detect any signal when ran with few non-heterogeneous samples (Aran, 2018).

I've been meaning to add a warning for that ages ago (#49), but never got to actually implement it.

@RichardCorbett
Copy link
Author

Great. Thanks.

I've heard that supplying cibersort with a matrix of samples will yield different results than when processing a single sample from the matrix. I've yet to set up and test this, but would this be your understanding as well?

@grst
Copy link
Collaborator

grst commented Feb 14, 2022

I would have thought not, but I might be wrong!

@RichardCorbett
Copy link
Author

I set up a small test to see if when a sample is processed either by itself or with 4, 9, 14, or 19 other samples in a matrix the result differ.

xcell: Fails when run on a single sample . As you note in the paper, I did see the UHR results changing with the different input files.
quantiseq: UHR results are the same across all input files
mcp_counter: UHR results are the same across all input files
epic: UHR results are the same across all input files
cibersort: UHR results are the same across all input files

@grst
Copy link
Collaborator

grst commented Feb 14, 2022

great, thanks for confirming!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants