ホームページ  >  記事  >  バックエンド開発  >  3 つ以上の条件を指定して Numpy「where」を使用して DataFrame に列を追加する方法

3 つ以上の条件を指定して Numpy「where」を使用して DataFrame に列を追加する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-19 13:02:02390ブラウズ

How to Add a Column to a DataFrame Using Numpy

複数の条件を持つ Numpy "where": 3 つの条件に対処する

問題の説明:

3 つ以上の条件に直面すると、複数の条件に基づいてデータフレームに新しい列を追加することが困難になります。指定されたシナリオでは、「consumption_energy」列の値に基づいて、「high」、「medium」、または「low」の値を持つ「energy_class」列を作成する必要があります。

解決策:

numpy.where は 2 つの条件しか処理できませんが、numpy.select を使用する賢い回避策により問題が解決されます。

Python コード:

<code class="python"># Define column and conditions
col = 'consumption_energy'
conditions = [df2[col] >= 400, (df2[col] < 400) & (df2[col] > 200), df2[col] <= 200]

# Define choices for conditions
choices = ["high", 'medium', 'low']

# Add "energy_class" column with np.select
df2["energy_class"] = np.select(conditions, choices, default=np.nan)</code>

出力例:

  consumption_energy energy_class
0                 459         high
1                 416         high
2                 186          low
3                 250       medium
4                 411         high
5                 210       medium
6                 343       medium
7                 328       medium
8                 208       medium
9                 223       medium

追加メモ:

default=np.nan は、条件を満たさない行に NaN 値を割り当てます。 。ニーズに合わせてカスタマイズできます。

以上が3 つ以上の条件を指定して Numpy「where」を使用して DataFrame に列を追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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