我有一个名为df
的1000行数据框。有两列:date
和log_return
。
date log_return
2014-01-01 . 0.01
2014-01-02 . 0.01
...
2019-02-01 . 0.01
2019-02-02 . 0.01
2019-02-03 . 0.01
2019-02-04 . 0.01
我只想计算最近三天(即2019-02-02、2019-02-03和2019-02-04)过去500天的log_return的滚动总和。
df['log_return'].apply(lambda x: x.rolling(window = 500, min_periods = 500).sum())
...将计算所有日期的滚动总和,这对我来说是不必要且费时的。在所有行都计算了滚动总和后,我不想进行行过滤。
是否有一种方便的方法可以只对几行进行滚动计算?因为如果数据帧变得如此之大,则对所有行进行滚动计算将更加耗时。