ホームページ >バックエンド開発 >Python チュートリアル >Pandas で条件ベースの値を含む新しい列を作成する方法

Pandas で条件ベースの値を含む新しい列を作成する方法

Barbara Streisand
Barbara Streisandオリジナル
2024-12-22 16:56:10456ブラウズ

How to Create a New Column with Condition-Based Values in Pandas?

条件ベースの値を使用した新しい列の作成

この質問では、特定のデータフレームに新しい列 (色) を追加する方法について説明します。条件は、Set 列の対応する値が 'Z' の場合は色を 'green' に設定し、それ以外の場合は 'red' に設定する必要があります。

Numpy による解決方法:

選択肢が 2 つしかないシナリオでは、np.where メソッドを利用できます。コードは次のとおりです:

df['color'] = np.where(df['Set'] == 'Z', 'green', 'red')

このアプローチでは、Set が 'Z' である行には 'green' を割り当て、それ以外の場合は 'red' を割り当てます。

Numpy Select を使用した解決策:

条件が 3 つ以上ある場合は、np.select を使用できます。色が次の基準を満たす必要があるとします。Set が 'Z' で Type が 'A' の場合は

  • ' yellow'、Set が 'Z' で Type が 'A' の場合は
  • 'blue' Type が 'B'
  • 'black' の場合、'B'
  • 'purple'それ以外の場合

このシナリオでは、コードは次のようになります。

conditions = [
    (df['Set'] == 'Z') & (df['Type'] == 'A'),
    (df['Set'] == 'Z') & (df['Type'] == 'B'),
    (df['Type'] == 'B')]
choices = ['yellow', 'blue', 'purple']
df['color'] = np.select(conditions, choices, default='black')

このソリューションにより、新しい列に対する柔軟かつ詳細な条件ベースの値の割り当てが可能になります。

以上がPandas で条件ベースの値を含む新しい列を作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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