Skip to content
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

Sparse DataFrame with all-zeros column returns NA for fancy index #29563

Closed
memeplex opened this issue Nov 12, 2019 · 1 comment · Fixed by #34158
Closed

Sparse DataFrame with all-zeros column returns NA for fancy index #29563

memeplex opened this issue Nov 12, 2019 · 1 comment · Fixed by #34158
Labels
Bug Sparse Sparse Data Type
Milestone

Comments

@memeplex
Copy link

Code Sample, a copy-pastable example if possible

# Your code here

import pandas as pd

df = pd.DataFrame({"x": [0, 0, 0],
                   "y": [4, 5, 6]})
df = df.astype(pd.SparseDtype("float", fill_value=0))
df.iloc[[1]]

Problem description

Executing the above code results in:

        x	y
1	NaN	5.0

Instead of

        x	y
1	0	5.0

This could be related to #27781, although the interpretation of the bug is different.

Expected Output

Mentioned above.

Output of pd.show_versions()

INSTALLED VERSIONS

commit : None
python : 3.7.5.candidate.1
python-bits : 64
OS : Linux
OS-release : 5.3.0-19-generic
machine : x86_64
processor : x86_64
byteorder : little
LC_ALL : None
LANG : en_US.UTF-8
LOCALE : en_US.UTF-8

pandas : 0.25.3
numpy : 1.17.4
pytz : 2019.3
dateutil : 2.8.1
pip : 19.3.1
setuptools : 41.1.0
Cython : 0.29.14
pytest : None
hypothesis : None
sphinx : 2.2.1
blosc : None
feather : None
xlsxwriter : None
lxml.etree : 4.4.1
html5lib : 1.0.1
pymysql : None
psycopg2 : 2.8.4 (dt dec pq3 ext lo64)
jinja2 : 2.10.3
IPython : 7.9.0
pandas_datareader: None
bs4 : 4.8.0
bottleneck : None
fastparquet : None
gcsfs : None
lxml.etree : 4.4.1
matplotlib : 3.1.1
numexpr : None
odfpy : None
openpyxl : None
pandas_gbq : None
pyarrow : None
pytables : None
s3fs : None
scipy : 1.3.2
sqlalchemy : 1.3.11
tables : None
xarray : None
xlrd : None
xlwt : None
xlsxwriter : None

@memeplex
Copy link
Author

Here is an even more minimalistic example:

import pandas as pd


s = pd.Series([0])
s = s.astype(pd.SparseDtype("float", fill_value=0))
s[[0]]

@jbrockmendel jbrockmendel added the Sparse Sparse Data Type label Nov 12, 2019
bajacc added a commit to bajacc/pandas that referenced this issue Dec 10, 2019
@mroeschke mroeschke added the Bug label Apr 25, 2020
@jreback jreback added this to the 1.1 milestone May 14, 2020
jreback added a commit that referenced this issue Jun 1, 2020
Co-authored-by: Jeff Reback <jeff@reback.net>
TomAugspurger added a commit to TomAugspurger/pandas that referenced this issue Jul 15, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Sparse Sparse Data Type
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants