Python Keep other columns when using sum() with groupby

前端 未结 3 828
遥遥无期
遥遥无期 2020-12-15 06:28

I have a pandas dataframe below:

    df

    name    value1    value2  otherstuff1 otherstuff2 
0   Jack       1         1       1.19        2.39     
1   Ja         


        
3条回答
  •  刺人心
    刺人心 (楼主)
    2020-12-15 06:43

    You should specify what pandas must do with the other columns. In your case, I think you want to keep one row, regardless of its position within the group.

    This could be done with agg on a group. agg accepts a parameter that specifies what operation should be performed for each column.

    df.groupby(['name'], as_index=False).agg({'value1': 'sum', 'value2': 'sum', 'otherstuff1': 'first', 'otherstuff2': 'first'})
    

提交回复
热议问题