我有一个 Pandas 数据框,我试图根据前一行值从中获取净值
id | 日期 | current_value | previous_date_value |
---|---|---|---|
1 | 2021-01-01 | 1 | 2 |
1 | 2021-01-01 | -1 | 2 |
1 | 2021-01-01 | 1 | 2 |
1 | 2021-01-01 | 1 | 2 |
我正在努力实现,
id | 日期 | current_value | previous_date_value | net_value |
---|---|---|---|---|
1 | 2021-01-01 | 1 | 2 | 3 |
1 | 2021-01-01 | -1 | 2 | 2 |
1 | 2021-01-01 | 1 | 2 | 3 |
1 | 2021-01-01 | 1 | 2 | 4 |
例如:对于第 1 行,1 (current_value) + 2 (previous_date_value) = 3
对于第 2 行,-1 (current_value) + 3 (前一行的 net_value) = 2
感谢任何帮助。
谢谢
答案 0 :(得分:1)
看起来像:
df['net_value'] = (df.groupby(['id','date'])
['current_value'].cumsum()
.add(df['previous_date_value'])
)