使用基於條件的值建立新欄位
此問題探討如何在給定資料幀中新增列、顏色。條件是如果 Set 列中的對應值為“Z”,則顏色應設為“綠色”,否則應設為“紅色”。
使用 Numpy 的解決方案其中:
對於只有兩個選擇的場景,可以使用 np.where 方法。程式碼如下:
df['color'] = np.where(df['Set'] == 'Z', 'green', 'red')
此方法有效地將「綠色」指派給 Set 為「Z」的行,否則指派「紅色」。
使用 Numpy Select 的解:
如果有兩個以上條件,可以使用 np.select。假設顏色應符合以下條件:
在這種情況下,代碼將為:
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中文網其他相關文章!