1 回答
TA贡献1815条经验 获得超10个赞
正如@Vaishali所评论的那样,这是 和 。您可能希望确保数据按顺序排序,尽管它看起来已经如此:groupbycumsumsort_values
# sort by `c_id` and `a_date`
df = df.sort_values(['c_id','a_date'])
df['balance'] = df.groupby('c_id')['c_action'].cumsum()
输出:
a_date c_id c_name c_action balance
0 2016-01-01 1 King 1000 1000
1 2016-01-02 1 King -200 800
2 2016-01-03 1 King 100 900
3 2016-01-04 1 King -400 500
4 2016-01-05 1 King 200 700
5 2016-01-06 1 King -200 500
6 2016-01-01 2 Smith 1000 1000
7 2016-01-02 2 Smith -300 700
8 2016-01-03 2 Smith -600 100
9 2016-01-04 2 Smith 100 200
10 2016-01-05 2 Smith -100 100
添加回答
举报
