数据帧遍历python



银行账户的数据

accntid    transcode    transamt balance
1            Credit        20      4000
1            Debit         50
1            Credit        80
2            Debit         60      5000
2            Credit        40
2            Debit         120
2            Credit        130

嗨,伙计们。。我有一个具有以上数据的数据帧,我想在下一行根据交易代码和交易金额更新余额。知道我如何在数据帧上来回遍历吗

IIUC:

df1 = df.assign(transamt = np.where(df['transcode'] == 'Debit',-1,1) * df['transamt'])
df1['balance1'] = (df1.balance
.fillna(df1.groupby('accntid', group_keys=False)
.apply(lambda x: x.balance.fillna(df1.transamt).cumsum())))
print(df1)

输出:

accntid transcode  transamt  balance  balance1
0        1    Credit        20   4000.0    4000.0
1        1     Debit       -50      NaN    3950.0
2        1    Credit        80      NaN    4030.0
3        2     Debit       -60   5000.0    5000.0
4        2    Credit        40      NaN    5040.0
5        2     Debit      -120      NaN    4920.0
6        2    Credit       130      NaN    5050.0

最新更新