Python Pandas のシリーズ適用関数に引数を渡す
パンダ ライブラリには 'apply()' メソッドが提供されますシリーズの各要素に関数を適用します。ただし、古いバージョンのパンダでは、追加の引数を関数に渡すことはできません。
古いバージョンのパンダの解決策:
古いバージョンでこの制限に対処するにはパンダの場合、'functools.partial()' または 'lambda' 関数:
Using 'functools.partial()':
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)
Using 'lambda':
# 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)
Pandas の新しいバージョンのソリューション:
2017 年 10 月以降、pandas は位置引数とキーワード引数の両方を に直接渡すことをサポートしています。 apply()' メソッド:
series.apply(my_function, args=(2, 3, 4), extra_kw={"example": 5})
この構文では、位置引数が Series の要素の後に追加され、キーワード引数は辞書として渡されます。
免責事項: 提供されるすべてのリソースの一部はインターネットからのものです。お客様の著作権またはその他の権利および利益の侵害がある場合は、詳細な理由を説明し、著作権または権利および利益の証拠を提出して、電子メール [email protected] に送信してください。 できるだけ早く対応させていただきます。
Copyright© 2022 湘ICP备2022001581号-3