簡體   English   中英

將行類別轉換為列

[英]Convert Rows Category into Columns

我有一系列類別如下。

mappingCategory = ["Animal", "Plant", "Animal", "Human", "Plant"]
指數 類別
0 動物
1個 植物
2個 動物
3個 人類
4個 植物

我想將數組轉換為二維數組,其中列是唯一類別(按字母順序排列),行顯示該行中的類別,如下所示。

mappingCategory = [[1, 0, 0], [0, 0, 1], [1, 0, 0], [0, 1, 0], [0, 0, 1]]
指數 動物 人類 植物
0 1個 0 0
1個 0 0 1個
2個 1個 0 0
3個 0 1個 0
4個 0 0 1個

我可以構建自己的 function 來轉換它,但是我可以使用 function 中的任何 python 構建嗎?

您可以使用.str.get_dummies() ,如下所示:

如果您有一個名為Category的 dataframe 列,請使用:

df['Category'].str.get_dummies()

或者,如果您直接從類別數組中執行此操作:

mappingCategory = ["Animal", "Plant", "Animal", "Human", "Plant"]

pd.Series(mappingCategory).str.get_dummies()

Output:

   Animal  Human  Plant
0       1      0      0
1       0      0      1
2       1      0      0
3       0      1      0
4       0      0      1

暫無
暫無

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

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