对于示例数据帧:
Date T/F Amount
0 11/10/03 T 5
1 11/10/03 T 5
2 11/10/03 F 9
3 12/10/03 T 1
4 12/10/03 F 3
5 14/10/03 T 3
我想按日期分组并得到金额的总和(这一点我知道怎么做)但我也想将组的T / F值设置为组中的最后一个值,所以产生这样的东西:
Date Amount T/F
0 11/10/03 19 F
1 12/10/03 4 F
2 14/10/03 3 T
答案 0 :(得分:2)
IIUIC,使用agg
In [417]: df.groupby('Date', as_index=False).agg({'T/F': 'last', 'Amount': 'sum'})
Out[417]:
Date Amount T/F
0 11/10/03 19 F
1 12/10/03 4 F
2 14/10/03 3 T
与
相同In [433]: df.groupby('Date', as_index=False).agg({'T/F': lambda x: x.iloc[-1], 'Amount': np.sum})
Out[433]:
Date Amount T/F
0 11/10/03 19 F
1 12/10/03 4 F
2 14/10/03 3 T