I have a dataframe like
id, index, name, count1, count2
1, 1, foo, 12, 10
1, 2, foo, 11, 12
1, 3, foo, 23, 12
1, 1, bar, 11, 21
...
2, 1, foo, ...
I want to get a dataframe as follows
id, name, count1, count2
1, foo, 46,34
1, bar, ..
So basically, i want to "washaway" index from this field.. while adding the count1 and count2 columns
How do i do this in pandas/python?
答案 0 :(得分:1)
是你想要的吗?
In [24]: df.groupby(['id','name']).sum().reset_index()
Out[24]:
id name index count1 count2
0 1 bar 1 11 21
1 1 foo 6 46 34
如果您要删除index
列:
In [26]: df.groupby(['id','name']).sum().reset_index().drop('index', 1)
Out[26]:
id name count1 count2
0 1 bar 11 21
1 1 foo 46 34
数据:
In [25]: df
Out[25]:
id index name count1 count2
0 1 1 foo 12 10
1 1 2 foo 11 12
2 1 3 foo 23 12
3 1 1 bar 11 21