-
-
Notifications
You must be signed in to change notification settings - Fork 18.4k
Regression in .loc with missing key on Categorical axis #21705
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
Comments
Still annoying in April 2019. Bump. Also the error message is misleading. All of the index values can be in the categories of the index being sliced, but it will still say 'a list-indexer must only include values that are in the categories'. I get around it by converting |
@joseortiz3 so would you do a PR to fix? which volunteer should we assign this too? |
I am not quite sure, but I think this is the expected behavior now? |
These cases now both correctly raise |
Yes agreed, this works as expected. But not sure if we have tests for this? |
@mroeschke I can add tests for the given issue. |
take |
Code Sample, a copy-pastable example if possible
Problem description
I don't have time to bisect now, but I guess this is due to #21569 (or alternatively #21594).
However I don't think the fix should be (another special case) in
core/indexing.py
, but rather inCategorical
code, which once more is artificially limiting the ability of interfacing with missing categories, something we should avoid at least in the internals.(More in general, it is annoying that a specific kind of index performs, on given - public and private - methods, differently from all other kinds)
Expected Output
Out[3]:
(Unless we decide that our deprecation cycle for missing keys in
.loc
immediately affectsCategorical
axes, and document this...)Output of
pd.show_versions()
INSTALLED VERSIONS
commit: dc45fba
python: 3.5.3.final.0
python-bits: 64
OS: Linux
OS-release: 4.9.0-6-amd64
machine: x86_64
processor:
byteorder: little
LC_ALL: None
LANG: it_IT.UTF-8
LOCALE: it_IT.UTF-8
pandas: 0.24.0.dev0+193.gdc45fbafe
pytest: 3.5.0
pip: 9.0.1
setuptools: 39.2.0
Cython: 0.25.2
numpy: 1.14.3
scipy: 0.19.0
pyarrow: None
xarray: None
IPython: 6.2.1
sphinx: 1.5.6
patsy: 0.5.0
dateutil: 2.7.3
pytz: 2018.4
blosc: None
bottleneck: 1.2.0dev
tables: 3.3.0
numexpr: 2.6.1
feather: 0.3.1
matplotlib: 2.2.2.post1153+gff6786446
openpyxl: 2.3.0
xlrd: 1.0.0
xlwt: 1.3.0
xlsxwriter: 0.9.6
lxml: 4.1.1
bs4: 4.5.3
html5lib: 0.999999999
sqlalchemy: 1.0.15
pymysql: None
psycopg2: None
jinja2: 2.10
s3fs: None
fastparquet: None
pandas_gbq: None
pandas_datareader: 0.2.1
gcsfs: None
The text was updated successfully, but these errors were encountered: