我有以下数据框:
data = {'Change': [.9, .8, .96, 1.5],
'Add': [0, 0, 660, 0],
'Open_Value':[1000, 900, 720, 691.2],
'Close_Value':[900, 720, 691.2, 1036.8]}
Change Add Open_Value Close_Value
0 0.90 0 1000.0 900.0
1 0.80 0 900.0 720.0
2 0.96 660 720.0 691.2
3 1.50 0 691.2 1036.8
目前,我使用apply和cumprod的组合“Open_Value”*“Change”来获取“Open_Value”和“Close_Value”列。然而,我想实现将“Add”列添加到当前行的“Close Value”和下一行的Open_Value中的逻辑,但我很难弄清楚如何在继续保持cumprod工作的同时完成此操作。
这是我想要的df:
Change Add Open_Value Close_Value
0 0.90 0 1000 900
1 0.80 0 900 720
2 0.96 660 720 1080
3 1.50 0 1080 1620
有人有什么建议吗?
1条答案
按热度按时间fzsnzjdm1#
这里的技巧是使用函数
shift
将Add
列数据向上滑动到下一行。计算完成后,可以使用以下指令删除
Add
列:一个二个一个一个