在多個條件下使用NumPy「where」
在處理資料操作任務時,通常需要應用不同的條件來選擇或修改具體值。 NumPy 的「where」函數是條件操作的強大工具,但預設情況下,它只處理兩個條件。
考慮這樣的情況,您想要將新欄位「energy_class」加入到名為的pandas DataFrame 「df_能量。」應依照下列條件指派能量等級:
由於NumPy的「where」函數不支援多種條件,解決方案在於使用其更強大的兄弟,「選擇。」以下是解決此問題的方法:
import numpy as np # Assuming df_energy has a column called "consumption_energy" col = 'consumption_energy' conditions = [ df_energy[col] >= 400, (df_energy[col] < 400) & (df_energy[col] > 200), df_energy[col] <= 200 ] choices = [ "high", 'medium', 'low' ] # Create the "energy_class" column using np.select df_energy["energy_class"] = np.select(conditions, choices, default=np.nan)
「select」的這種擴充用法可讓您定義多個條件並將對應的選擇對應到輸出。預設情況下,如果不滿足任何條件,它會指派“np.nan”。
因此,您的 DataFrame 現在將根據您指定的條件使用適當的標籤填充「energy_class」列,提供能源消耗水平的明確分類。
以上是如何使用NumPy'where”與多個條件進行條件運算?的詳細內容。更多資訊請關注PHP中文網其他相關文章!