theislab / sfaira_tutorials

BSD 3-Clause "New" or "Revised" License
6 stars 2 forks source link

KeyError: 'organism' in ui.load_model_embedding() #1

Closed vmorozov closed 2 years ago

vmorozov commented 2 years ago

https://github.com/theislab/sfaira_tutorials/blob/master/tutorials/pbmc3k.ipynb

Getting error when try to re-run the notebook

KeyError Traceback (most recent call last) /tmp/ipykernel_20153/3933388209.py in ----> 1 ui.load_model_embedding() 2 ui.predict_embedding() 3 adata_sfaira = ui.data.adata 4 5 sc.pp.neighbors(adata_sfaira, use_rep="X_sfaira")

/opt/conda/lib/python3.9/site-packages/sfaira/ui/user_interface.py in load_model_embedding(self) 432 topology_id=self.zoo_embedding.topology_container.topology_id 433 ) --> 434 self.estimator_embedding = EstimatorKerasEmbedding( 435 data=self.data.adata, 436 model_dir=model_weights_file,

/opt/conda/lib/python3.9/site-packages/sfaira/estimators/keras.py in init(self, data, model_dir, model_id, model_topology, weights_md5, cache_path, adata_ids) 519 adata_ids: AdataIds = AdataIdsSfaira() 520 ): --> 521 super(EstimatorKerasEmbedding, self).init( 522 data=data, 523 model_dir=model_dir,

/opt/conda/lib/python3.9/site-packages/sfaira/estimators/keras.py in init(self, data, model_dir, model_class, model_id, model_topology, weights_md5, cache_path, adata_ids) 186 self.topology_container = model_topology 187 if isinstance(data, anndata.AnnData): --> 188 data = DistributedStoresAnndata(adatas=data).stores[self.organism] 189 if isinstance(data, list) or isinstance(data, tuple): 190 for x in data:

/opt/conda/lib/python3.9/site-packages/sfaira/data/store/multi_store.py in init(self, adatas) 249 adatas = [adatas] 250 for adata in adatas: --> 251 organism = adata.uns[self._adata_ids_sfaira.organism] 252 if isinstance(organism, list): 253 if len(organism) == 1:

/opt/conda/lib/python3.9/site-packages/anndata/compat/_overloaded_dict.py in getitem(self, key) 98 return self.overloaded[key].get() 99 else: --> 100 return self.data[key] 101 102 def setitem(self, key, value):

KeyError: 'organism'

le-ander commented 2 years ago

Hey, thanks for the report. This error has been addressed in a separate issue. Check this for a solution: https://github.com/theislab/sfaira/issues/375#issuecomment-928176791