汇总整个表并将其重置为零 [英] Cumsum entire table and reset at zero
本文介绍了汇总整个表并将其重置为零的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有以下数据框.
d = pd.DataFrame({'one' : [0,1,1,1,0,1],'two' : [0,0,1,0,1,1]})
d
one two
0 0 0
1 1 0
2 1 1
3 1 0
4 0 1
5 1 1
我想要重置为零的累积总和
I want cumulative sum which resets at zero
期望的输出应该是
pd.DataFrame({'one' : [0,1,2,3,0,1],'two' : [0,0,1,0,1,2]})
one two
0 0 0
1 1 0
2 2 1
3 3 0
4 0 1
5 1 2
我尝试使用分组依据,但不适用于整个表.
i have tried using group by but it does not work for entire table.
推荐答案
df2 = df.apply(lambda x: x.groupby((~x.astype(bool)).cumsum()).cumsum())
print(df2)
输出:
one two
0 0 0
1 1 0
2 2 1
3 3 0
4 0 1
5 1 2
这篇关于汇总整个表并将其重置为零的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文