首頁 > 後端開發 > Python教學 > 如何在 Pandas 中建立具有基於條件的值的新列?

如何在 Pandas 中建立具有基於條件的值的新列?

Barbara Streisand
發布: 2024-12-22 16:56:10
原創
512 人瀏覽過

How to Create a New Column with Condition-Based Values in Pandas?

使用基於條件的值建立新欄位

此問題探討如何在給定資料幀中新增列、顏色。條件是如果 Set 列中的對應值為“Z”,則顏色應設為“綠色”,否則應設為“紅色”。

使用 Numpy 的解決方案其中:

對於只有兩個選擇的場景,可以使用 np.where 方法。程式碼如下:

df['color'] = np.where(df['Set'] == 'Z', 'green', 'red')
登入後複製

此方法有效地將「綠色」指派給 Set 為「Z」的行,否則指派「紅色」。

使用 Numpy Select 的解:

如果有兩個以上條件,可以使用 np.select。假設顏色應符合以下條件:

  • 當 Set 為「Z」且 Type 為「A」時為「黃色」
  • 當 Set 為「Z」且 Type時為「藍色」當類型為「B」
  • 「黑色」時,為「B」
  • 「紫色」否則

在這種情況下,代碼將為:

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中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板