簡體   English   中英

如何在 Python 中使用多個標簽進行一次熱編碼?

[英]How to one hot encode with multiple labels in Python?

我有一個 CSV 表格,看起來像這樣:

id   attribute
1    Canada
1    United States
2    Germany
3    Canada
4    Germany
4    United States

我想把上面的表格變成:

id   attribute.Canada   attribute.UnitedStates   attribute.Germany
1    1.0                1.0                      0.0
2    0.0                0.0                      1.0
3    1.0                0.0                      0.0
4    0.0                1.0                      1.0

我希望完成三件事:

  1. 每行都有一個唯一的 ID
  2. “屬性”標簽下的值成為熱編碼的列名
  3. 將新表導出回 CSV

我只想給你一個開端。 獲取屬性列的唯一值,並將其附加到一個具有先前初始化的 'id' 的數組中。 獲取 'id' 的唯一值(即 1 2 3 4)並將它們添加為索引,將較早的數組添加為列以初始化數據幀。

遍歷“id”的唯一值,這樣做使用正則表達式讀取以“id”值開頭的行。 提取屬性值並使用值 1.0 構建字典並將其附加到數據幀,稍后將 NaN 替換為 0.0。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM