我有以下数据框。
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
Run Code Online (Sandbox Code Playgroud)
我想要重置为零的累积总和
所需的输出应该是
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
Run Code Online (Sandbox Code Playgroud)
我曾尝试使用 group by 但它不适用于整个表。
df2 = df.apply(lambda x: x.groupby((~x.astype(bool)).cumsum()).cumsum())
print(df2)
Run Code Online (Sandbox Code Playgroud)
输出:
one two
0 0 0
1 1 0
2 2 1
3 3 0
4 0 1
5 1 2
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
867 次 |
最近记录: |