spectra
spectra copied to clipboard
unbound local variable is_global
Trying to call est_spectra with a gene_set_dict of the form {"global": dict of gene sets} and use_cell_types=False leads to an unbound local variable error for is_global after training. Looking through the code, this happens because in this case, check_gene_set_dictionary expects a single-layered dict for gene_set_dict. This behavior isn't in the doc string. A couple suggestions:
- Either change this so the expected format of
gene_set_dictis consistent (my personal preference), or else havecheck_gene_set_dictionarycheck ifglobal_keyis in the top layer ofgene_set_dictbefore wrapping it in another layer. - Expand the doc string for
est_spectrato be more explicit about the format and put an example of the format in the README - No matter what, check that
gene_set_dictis not empty after all changes are made to it and before training
Hi, thanks for raising this issue and your suggestions. PR #35 contains a new check that gene_set_dict is not empty. Agreed, ideally the format of gene_set_dict is consistent. This should also be updated in the next release.