ホームページ >バックエンド開発 >Python チュートリアル >既存の列値に基づいて DataFrame に条件付き列を作成するにはどうすればよいですか?

既存の列値に基づいて DataFrame に条件付き列を作成するにはどうすればよいですか?

Barbara Streisand
Barbara Streisandオリジナル
2024-12-21 07:27:09677ブラウズ

How Can I Create Conditional Columns in a DataFrame Based on Existing Column Values?

既存の列の値に基づく条件付き列の作成

データ分析では、条件に基づいて値が決定される新しい列を作成することが必要になることがよくあります。既存の列から派生します。 「Type」と「Set」の 2 つの列を持つ DataFrame があり、特定のルールに従う「color」という新しい列を追加するシナリオを考えてみましょう。

色の列の追加設定値に基づく

「設定」が「Z」の場合は値が「緑」、それ以外の場合は「赤」となる「色」列を作成するには、次のようにします。次のアプローチ:

import numpy as np

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

このコードは、条件に基づいて値を選択する np.where 関数を利用します。 「Set」列の値が「Z」の場合、「color」値は「green」になります。それ以外の場合は、「赤」になります。

より複雑な条件での np.select の使用

複数の条件があるより複雑なシナリオでは、np.select を使用できます。 。たとえば、次のルールに従って色を割り当てるとします。

  • 「Set」が「Z」で「Type」が「A」の場合は「黄色」
  • 「Set」が「Z」、「Type」が「B」の場合は「青」
  • 「Type」が「B」の場合は「紫」 "B"
  • "black" それ以外の場合
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')

np.select 関数は、条件のリストと対応する選択肢のリストを受け取ります。条件が満たされる場合、関連する選択肢が選択されます。それ以外の場合は、デフォルト値が使用されます。

これらのメソッドは、既存の列値に基づいて条件付き列を作成するための多用途のオプションを提供し、データを効率的に操作および分析できるようにします。

以上が既存の列値に基づいて DataFrame に条件付き列を作成するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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