PythonDataFrame:多列的累加和和减法?

PythonDataFrame:多列的累加和和减法?,python,python-3.x,pandas,numpy,cumsum,Python,Python 3.x,Pandas,Numpy,Cumsum,我的df带有名称,标记和负数。我正在尝试做一个累计和,并分为负数列 df name marks negative 0 marcus 20 0 1 marcus 30 10 2 marcus 0 20

我的df带有
名称
标记
负数
。我正在尝试做一个累计和,并分为
负数

    df

            name        marks       negative    

    0      marcus       20              0          
    1      marcus       30             10  
    2      marcus       0              20                 
    3      paul         10              0          
    4      bruno        50             50           
    5      bruno        20              0          
    6      lucy          0              5          





    Final df

            name        marks       negative    finsum

    0      marcus       20              0          20
    1      marcus       30             10          40           (20+30-10) - (finsum+marks-negative)
    2      marcus       0              20          20       
    3      paul         10              0          10
    4      bruno        50             50           0
    5      bruno        20              0          20
    6      lucy          0              5          -5
我已经尝试了一行
cumsum()
,但是如何使用
cumsum()
添加和细分,或者有其他方法吗?

使用:

df1 = df.groupby('name').cumsum()
df['fin'] = df1['marks'].sub(df1['negative'])

print (df)
     name  marks  negative  fin
0  marcus     20         0   20
1  marcus     30        10   40
2  marcus      0        20   20
3    paul     10         0   10
4   bruno     50        50    0
5   bruno     20         0   20
6    lucy      0         5   -5