首页 >后端开发 >Python教程 >如何在 Python Pandas 中向 apply() 传递附加参数?

如何在 Python Pandas 中向 apply() 传递附加参数?

DDD
DDD原创
2024-10-23 00:01:31261浏览

How to Pass Additional Arguments to apply() in Python Pandas?

在 Python Pandas 中向 apply() 传递附加参数

将用户定义的函数应用于 Pandas 系列通常需要传递附加参数。虽然 Pandas 的早期版本不允许这样做,但较新的版本提供了对参数传递的支持。

更新的方法(Pandas >= 1.0)

自 Pandas 1.0 和之后,您可以直接使用 apply() 方法传递额外的参数。

<code class="python">my_series.apply(your_function, args=(2, 3, 4), extra_kw=1)</code>

使用 args 传递的参数添加在 series 元素之后,而关键字参数可以使用 extra_kw 传递。

旧版本的解决方法

对于 Pandas 1.0 之前的版本:

方法 1:使用 functools.partial

此方法允许您创建绑定任何所需参数的部分应用函数。

<code class="python">import functools
import operator

add_3 = functools.partial(operator.add, 3)
my_series.apply(add_3)</code>

方法 2:使用 Lambda 函数

Lambda 函数也可用于传递争论。

<code class="python">my_series.apply((lambda x: your_func(a, b, c, d, ..., x)))</code>

以上是如何在 Python Pandas 中向 apply() 传递附加参数?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn