AllenInstitute / visual_behavior_analysis

Python package for analyzing behavioral data for Brain Observatory: Visual Behavior
Other
22 stars 6 forks source link

`key_error` on `loading.get_filtered_ophys_experiment_table` #757

Closed dougollerenshaw closed 3 years ago

dougollerenshaw commented 3 years ago

This:

from visual_behavior.data_access import loading
experiments_table = loading.get_filtered_ophys_experiment_table(release_data_only=True)

Leads to:

---------------------------------------------------------------------------
KeyError                                  Traceback (most recent call last)
<ipython-input-10-395a8d22ad92> in <module>
----> 1 experiments_table = loading.get_filtered_ophys_experiment_table(release_data_only=True, exclude_ai94=True)

/allen/programs/braintv/workgroups/nc-ophys/Doug/code/visual_behavior_analysis/visual_behavior/data_access/loading.py in get_filtered_ophys_experiment_table(include_failed_data, release_data_only, exclude_ai94)
    201                                      experiments.session_type.values]
    202     experiments['cre_line'] = [full_genotype.split('/')[0] for full_genotype in experiments.full_genotype.values]
--> 203     experiments = experiments.drop_duplicates(subset='ophys_experiment_id')
    204     experiments = experiments.set_index('ophys_experiment_id')
    205     # filter one more time on load to restrict to data release experiments ###

~/anaconda3/envs/vba/lib/python3.8/site-packages/pandas/core/frame.py in drop_duplicates(self, subset, keep, inplace)
   4907 
   4908         inplace = validate_bool_kwarg(inplace, "inplace")
-> 4909         duplicated = self.duplicated(subset, keep=keep)
   4910 
   4911         if inplace:

~/anaconda3/envs/vba/lib/python3.8/site-packages/pandas/core/frame.py in duplicated(self, subset, keep)
   4964         diff = Index(subset).difference(self.columns)
   4965         if not diff.empty:
-> 4966             raise KeyError(diff)
   4967 
   4968         vals = (col.values for name, col in self.items() if name in subset)

KeyError: Index(['ophys_experiment_id'], dtype='object')

I believe this is related to an issue that I introduced with PR #756.

A PR with a fix is coming.

dougollerenshaw commented 3 years ago

Solved in issue #758. Closing.