ホームページ >バックエンド開発 >Python チュートリアル >Python を使用して既存の列の条件に基づいて新しい列を作成する方法
既存の列に基づく値を持つ新しい列の作成
特定のデータ分析シナリオでは、新しい列を作成する必要がある場合があります。値は、既存の列の特定の条件に基づいて選択されます。これは、チェックする条件の数に応じて、Python のさまざまな方法を使用して実現できます。
np.where を使用した 2 つの選択肢のシナリオ
2 つしかない場合選択肢から選択するには、numpy 関数 np.where を効率的に使用できます。次の形式を取ります:
df['new_column'] = np.where(condition, value_if_true, value_if_false)
ここで、「df」はデータフレーム、「condition」は条件を定義するブール式、「value_if_true」は条件が True の場合に割り当てられる値です。 「value_if_false」は、条件が False の場合に割り当てられる値です。
たとえば、「color」列を作成するには提供されたデータフレームでは、「Set」が「Z」の場合は「color」が「green」、それ以外の場合は「red」になります。
df['color'] = np.where(df['Set']=='Z', 'green', 'red')
np.select
チェックする条件が 3 つ以上ある場合は、numpy 関数 np.select を利用できます。より複雑な条件付きロジックが可能になります。形式は次のとおりです:df['new_column'] = np.select(conditions, choices, default=None)ここで、「条件」はブール式のリスト、「選択」は各条件に対応する値のリスト、「デフォルト」は次の場合に割り当てられる値です。どの条件も満たされていません。たとえば、('Set' == 'Z') & の場合、'color' が ' yellow' として割り当てられる場合、 ('Type' == 'A')、('Set' == 'Z') & ('Type' == 'B') の場合は '青'、('Type' == ') の場合は '紫' B')、それ以外の場合は 'black' を使用できます:
以上がPython を使用して既存の列の条件に基づいて新しい列を作成する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。