我正在寻找解决方案,发布在:
但是在PYTHON中。
谢谢!
答案 0 :(得分:2)
您需要df.pivot_table()
:
df.pivot_table(index='ID',columns='Fruit',values='n',fill_value=0)
Fruit Apple Banana Orange Pear Plum
ID
1000 0 1 3 1 0
1001 0 1 0 0 2
1002 0 1 0 0 0
1003 0 1 2 1 1
1004 2 2 1 1 0
答案 1 :(得分:1)
data = {'id' :
[1000,1000,1000,1001,10001,1002,1003,1003,1003,1003,1004,1004,1004,1004],
'Fruit' :['Banana', 'Orange', 'Pear', 'Banana', 'Plum', 'Banana', 'Banana', 'Orange',
'Pear', 'Plum', 'Apple', 'Banana', 'Orange', 'Pear'],
'num' : [1,3,1,1,2,1,1,2,1,1,2,2,1,1]}
df = pd.DataFrame(data)
import numpy as np
df.pivot(index='id', columns='Fruit', values='num').replace(np.nan, 0)