在Python Pandas 中將參數傳遞給Series Apply 函數
pandas 函式庫提供了'apply(>pandas 庫提供了
'apply()'方法將函數應用於Series 的每個元素。然而,舊版的 pandas 不允許向函數傳遞額外的參數。
舊版Pandas 的解決方案:在舊版本中處理此限制pandas 中,您可以使用'functools.partial()' 或
'lambda'函數:
使用'functools.partial()':<code class="python">import functools import operator # Define a function with multiple arguments def add_3(a, b, c): return a + b + c # Create a partial function by binding extra arguments add_3_partial = functools.partial(add_3, 2, 3) # Apply the partial function to a series series.apply(add_3_partial)</code>
使用'bda' :
<code class="python"># Create a lambda function to pass extra arguments to the apply method lambda_func = lambda x: my_function(a, b, c, d, ..., x) # Apply the lambda function to the series series.apply(lambda_func)</code>
Pandas 新版本的解:
自2017 年10 月起,pandas 支援將位置參數和關鍵字參數直接傳遞給
'apply()'<code class="python">series.apply(my_function, args=(2, 3, 4), extra_kw={"example": 5})</code>
以上是如何在 Python 中傳遞參數來應用 Pandas 系列的函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!