digitalcytometry / ecotyper

EcoTyper is a machine learning framework for large-scale identification of cell states and cellular ecosystems from gene expression data.
Other
177 stars 41 forks source link

Failure of Recovery of Ecotypes (Tutorial 3) in Spatial Transcriptomics data #80

Open corecontingency opened 10 months ago

corecontingency commented 10 months ago

I have run Tutorial 5: "De novo Discovery of Cell States and Ecotypes in scRNA-seq Data" with my own scRNA dataset, which ran appropriately. However, I am now trying to use that recovered ecotype from Tutorial 5 to run Tutorial 3: "Recovery of Cell States and Ecotypes in Visium Spatial Gene Expression Data" on my own spatial dataset, which is failing with the below error:

Plotting cell state heatmaps...
Plotting cell state heatmaps for NA...
Error in if (all(state_data$Malignant == 1)) { : 
  missing value where TRUE/FALSE needed
Execution halted

I am unsure what is causing this problem. Full error log here.

To reproduce my issue, here is the input data for Tutorial 5, and the extra input data for tutorial 3 here.

Thank you so much for your help - I have been banging my head against the wall on this one. Not sure why it is giving this error.

BALuca commented 10 months ago

Hello,

Thank you for providing the comprehensive output for debug. I noticed that the barcodes in the CARD_output.txt file contain "-". I would recommend to replace them with "." and try running Tutorial 3 again.

Best, The EcoTyper team

corecontingency commented 10 months ago

Hi, thank you very much for the help! It looks like that worked - and the old error message is gone.

Unfortunately, a new one has appeared, as seen below:

$ Rscript EcoTyper_recovery_visium.R -c /home/user/src/results_beta/prep/config_recovery_visium.yml

Loading visium data...

Loading user-provided cell type fractions...

Running cell state recovery on the visium dataset...
Running cell state recovery on: Schwann...
Running cell state recovery on: Immune...
Running cell state recovery on: Liver...
Running cell state recovery on: Tumor...
Running cell state recovery on: Mesenchymal...
Running cell state recovery on: Endothelial...
[1] ""

Calculating cell state abundances...
[1] "Rscript spatial_states.R discovery_scRNA_jansky Visium_ID_REDACTED Top_50 "
Reading adjusted fractions from folder: ../CIBERSORTx/fractions/visium/Visium_ID_REDACTED/Top_50
Calculating cell state abundance for Endothelial...
Error in `[.data.frame`(cell_fractions, , c(colnames(cell_fractions)[1],  : 
  undefined columns selected
Calls: [ -> [.data.frame
Execution halted
Error in RunJobQueue() : 
  EcoTyper failed. Please check the error message above!
Execution halted

Any thoughts on what might be going wrong this time?