Skip to content

BUG: error when unstacking in DataFrame.groupby.apply  #52444

Closed
@topper-123

Description

@topper-123

Pandas version checks

  • I have checked that this issue has not already been reported.

  • I have confirmed this bug exists on the latest version of pandas.

  • I have confirmed this bug exists on the main branch of pandas.

Reproducible Example

>>> df = pd.DataFrame.from_dict({'b1':['aa','ac','ac','ad'],
...                              'b2':['bb','bc','ad','cd'],
...                              'b3':['cc','cd','cc','ae'],
...                              'c' :['a','b','a','b']})
>>> grp = df.groupby('c')[df.columns.drop('c')]
>>> grp.apply(lambda x: x.unstack().value_counts())
TypeError: Series.name must be a hashable type

Issue Description

When grouping using DataFrameGroupby using apply and a selection, Pandas can be too eager to supply a name to the resulting series.

Expected Behavior

The example should not fail, but shoud give

c
a  cc    2
   aa    1
   ac    1
   bb    1
   ad    1
b  cd    2
   ac    1
   ad    1
   bc    1
   ae    1
Name: count, dtype: int64

xref #7155

Installed Versions

INSTALLED VERSIONS

commit : e7e6078
python : 3.9.7.final.0
python-bits : 64
OS : Darwin
OS-release : 22.3.0
Version : Darwin Kernel Version 22.3.0: Mon Jan 30 20:39:35 PST 2023; root:xnu-8792.81.3~2/RELEASE_ARM64_T8103
machine : arm64
processor : arm
byteorder : little
LC_ALL : None
LANG : None
LOCALE : None.UTF-8

pandas : 2.1.0.dev0+419.g9d6bae5eab
numpy : 1.23.4
pytz : 2022.7
dateutil : 2.8.2
setuptools : 65.6.3
pip : 22.3.1
Cython : 0.29.33
pytest : 7.1.2
hypothesis : 6.37.0
sphinx : 5.0.2
blosc : 1.10.6
feather : None
xlsxwriter : 3.0.3
lxml.etree : 4.9.1
html5lib : None
pymysql : 1.0.2
psycopg2 : 2.9.5
jinja2 : 3.1.2
IPython : 8.9.0
pandas_datareader: None
bs4 : 4.11.1
bottleneck : 1.3.5
brotli :
fastparquet : 0.8.3
fsspec : 2022.11.0
gcsfs : 2022.11.0
matplotlib : 3.6.2
numba : 0.56.4
numexpr : 2.8.4
odfpy : None
openpyxl : 3.0.10
pandas_gbq : None
pyarrow : 9.0.0
pyreadstat : None
pyxlsb : 1.0.10
s3fs : 2022.11.0
scipy : 1.9.1
snappy : None
sqlalchemy : 1.4.43
tables : 3.7.0
tabulate : 0.9.0
xarray : None
xlrd : 2.0.1
zstandard : 0.18.0
tzdata : 2023.3
qtpy : 2.2.0
pyqt5 : None

Metadata

Metadata

Assignees

No one assigned

    Labels

    ApplyApply, Aggregate, Transform, MapBugGroupby

    Type

    No type

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions