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

DataFrame.apply fails for string function arguments with additional positional or keyword arguments #22376

megabyde opened this issue Aug 16, 2018 · 0 comments


None yet
2 participants
Copy link

commented Aug 16, 2018

Code sample

import pandas as pd
df = pd.DataFrame([[1, 2, 3], [1, 2, 3]])
df.apply('sum', axis=1, min_count=1)

Problem description

When we use the DataFrame.apply method with a string function argument (e.g. 'sum') and provide additional positional or keyword arguments it fails with the following exception:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "<cut>/pandas/core/", line 6173, in apply
    return op.get_result()
  File "<cut>/pandas/core/", line 151, in get_result
    return self.apply_standard()
  File "<cut>/pandas/core/", line 257, in apply_standard
  File "<cut>/pandas/core/", line 286, in apply_series_generator
    results[i] = self.f(v)
  File "<cut>/pandas-dev/pandas/core/", line 78, in f
    return func(x, *args, **kwds)
TypeError: ("'str' object is not callable", 'occurred at index 0')

but works just fine without additional arguments. The code above fails in master.

Expected Output

>>> df.apply('sum', axis=1, min_count=1)
0    6
1    6
dtype: int64

Output of pd.show_versions()

INSTALLED VERSIONS ------------------ commit: 70e6f7c python: python-bits: 64 OS: Linux OS-release: 3.0.101- machine: x86_64 processor: x86_64 byteorder: little LC_ALL: None LANG: en_US.UTF-8 LOCALE: en_US.UTF-8

pandas: 0.24.0.dev0+469.g70e6f7c3c
pytest: 3.7.1
pip: 10.0.1
setuptools: 40.0.0
Cython: 0.28.5
numpy: 1.15.0
scipy: 1.1.0
pyarrow: 0.9.0
xarray: 0.10.8
IPython: 6.5.0
sphinx: 1.7.6
patsy: 0.5.0
dateutil: 2.7.3
pytz: 2018.5
blosc: None
bottleneck: 1.2.1
tables: 3.4.4
numexpr: 2.6.7
feather: 0.4.0
matplotlib: 2.2.3
openpyxl: 2.5.5
xlrd: 1.1.0
xlwt: 1.3.0
xlsxwriter: 1.0.5
lxml: 4.2.4
bs4: 4.6.3
html5lib: 1.0.1
sqlalchemy: 1.2.10
pymysql: 0.9.2
psycopg2: None
jinja2: 2.10
s3fs: 0.1.5
fastparquet: None
pandas_gbq: None
pandas_datareader: None
gcsfs: 0.1.1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.