ホームページ  >  記事  >  バックエンド開発  >  引数付き関数を Pandas シリーズに適用するにはどうすればよいですか?

引数付き関数を Pandas シリーズに適用するにはどうすればよいですか?

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-22 23:15:29234ブラウズ

How to Apply a Function with Arguments to a Pandas Series?

引数を持つ関数を Pandas シリーズに適用する

問題:

次のことが必要です追加の引数を使用して関数を pandas シリーズに適用します。ただし、pandas apply() メソッドは、単一の引数を持つ関数のみを受け入れます。

解決策:

Pandas の新しいバージョン (2017 年 10 月以降) :

pandas apply() は、位置引数とキーワード引数をサポートするように更新されました。パラメーターを渡すには、次の構文を使用します:

<code class="python">my_series.apply(your_function, args=(param1, param2, ...), extra_kw=arg1)</code>

Pandas の古いバージョン:

  1. functools.partial の使用:

functools.partial(func, *args, **kwargs) を使用して部分関数を作成し、追加の引数を関数にバインドします。

<code class="python">add_3 = functools.partial(operator.add, 3)
my_series.apply(add_3)</code>
  1. 使用ラムダ式:

追加の引数を組み込んだラムダ関数を渡す:

<code class="python">my_series.apply(lambda x: your_func(x, arg1, arg2, ...))</code>
  1. カスタム関数の作成:

シリーズの要素を最初のパラメーターとして含む、必要なすべての引数を受け入れるカスタム関数を定義します:

<code class="python">def my_custom_func(x, arg1, arg2, ...):
    return ...

my_series.apply(my_custom_func, args=(arg1, arg2, ...))</code>

以上が引数付き関数を Pandas シリーズに適用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。