[英]Pandas - use pivot_table to convert each unique element in 1 column into a unique column
我正在嘗試擴展 dataframe 以便對於一列的行中的所有唯一元素,每個值本身就成為一列。
我從看起來像這樣的 dataframe 開始。
Colour Age Type Count
0 Black 11yrs Cats 22
1 Black 12yrs Cats 2
2 White 8yrs Dogs 10
3 Brown 11yrs Dogs 2
4 White 12yrs Cats 14
我想更改 dataframe,使列是顏色列的唯一元素,黑色、白色、棕色 - 使其看起來像這樣:
Age Type Black White Brown
0 11yrs Cats 22 0 0
1 12yrs Cats 2 14 0
2 8yrs Dogs 0 10 0
3 11yrs Dogs 0 0 2
我嘗試了幾種方法,但顯然我錯過了一些東西。
任何幫助表示贊賞。
您可以按如下方式使用pivot_table
:
(df.pivot_table(index=['Age', 'Type'],
columns='Colour',
values='Count',
fill_value=0).reset_index())
Out[22]:
Colour Age Type Black Brown White
0 11yrs Cats 22 0 0
1 11yrs Dogs 0 2 0
2 12yrs Cats 2 0 14
3 8yrs Dogs 0 0 10
或set_index
和unstack
(df.set_index(['Age', 'Type', 'Colour']).Count.unstack(fill_value=0)
.reset_index())
Out[23]:
Colour Age Type Black Brown White
0 11yrs Cats 22 0 0
1 11yrs Dogs 0 2 0
2 12yrs Cats 2 0 14
3 8yrs Dogs 0 0 10
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.