-
Notifications
You must be signed in to change notification settings - Fork 1
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
Preserve categorical dtype with map
in get()
#448
Comments
I am wondering about the behavior when >>> import audb
>>> audb.load("emodb", version="1.4.1", only_metadata=True, full_path=False)
>>> print(db["files"]["transcription"].get().head())
file
wav/03a01Fa.wav a01
wav/03a01Nc.wav a01
wav/03a01Wa.wav a01
wav/03a02Fc.wav a02
wav/03a02Nc.wav a02
Name: transcription, dtype: category
Categories (10, object): ['a01', 'a02', 'a04', 'a05', ..., 'b02', 'b03', 'b09', 'b10']
>>> print(db["files"]["transcription"].get(map=True).head())
file
wav/03a01Fa.wav Der Lappen liegt auf dem Eisschrank.
wav/03a01Nc.wav Der Lappen liegt auf dem Eisschrank.
wav/03a01Wa.wav Der Lappen liegt auf dem Eisschrank.
wav/03a02Fc.wav Das will sie am Mittwoch abgeben.
wav/03a02Nc.wav Das will sie am Mittwoch abgeben.
Name: True, dtype: string
>>> print(db["files"]["transcription"].get(map=False).head())
file
wav/03a01Fa.wav Der Lappen liegt auf dem Eisschrank.
wav/03a01Nc.wav Der Lappen liegt auf dem Eisschrank.
wav/03a01Wa.wav Der Lappen liegt auf dem Eisschrank.
wav/03a02Fc.wav Das will sie am Mittwoch abgeben.
wav/03a02Nc.wav Das will sie am Mittwoch abgeben.
Name: False, dtype: string In words, when I do This is the type hint for the map param in map: typing.Dict[str, typing.Union[str, typing.Sequence[str]]] = None, I had so far always used it more like this: >>> print(db["files"]["transcription"].get(map="transcription"))
file
wav/03a01Fa.wav Der Lappen liegt auf dem Eisschrank.
wav/03a01Nc.wav Der Lappen liegt auf dem Eisschrank.
wav/03a01Wa.wav Der Lappen liegt auf dem Eisschrank.
wav/03a02Fc.wav Das will sie am Mittwoch abgeben.
wav/03a02Nc.wav Das will sie am Mittwoch abgeben.
...
wav/16b10Lb.wav Die wird auf dem Platz sein, wo wir sie immer ...
wav/16b10Tb.wav Die wird auf dem Platz sein, wo wir sie immer ...
wav/16b10Td.wav Die wird auf dem Platz sein, wo wir sie immer ...
wav/16b10Wa.wav Die wird auf dem Platz sein, wo wir sie immer ...
wav/16b10Wb.wav Die wird auf dem Platz sein, wo wir sie immer ...
Name: transcription, Length: 535, dtype: string |
You are right db["files"]["transcription"].get(map="transcription") is the correct call at the moment, even though there is anyway no other available choice than |
Maybe we also extend |
When requesting a table column with defined categories, dtype
category
is returned:But when using
map
to map to labels defined by the scheme, we loose thecategory
dtype:I'm not sure yet if this is a feature or a bug, but it feels strange to me, that we loose the
category
dtype.The same holds true, when the scheme labels are given by a misc table:
The text was updated successfully, but these errors were encountered: