Pandas 向前与居中滚动计算
Pandas 中的 rolling
默认是向后(也就是向上)获取滚动窗口,如果需要向前(也就是向下)或者居中(也就是同时向上和向下)获取滚动窗口,则可以分别使用 pd.api.indexers.FixedForwardWindowIndexer
和 center=True
来实现。
本文还使用了 .shift(-1)
实现向前或者居中获取滚动窗口,并对比了这种方法与上述方法所得结果的差异。
data | forward_using_FixedForwardWindowIndexer | forward_using_shift | center_using_center | center_using_shift | |
---|---|---|---|---|---|
0 | 1.0 | 3.0 | 3.0 | 3.0 | 3.0 |
1 | 2.0 | 2.0 | 2.0 | 3.0 | 3.0 |
2 | NaN | 4.0 | 4.0 | 6.0 | 6.0 |
3 | 4.0 | 9.0 | 9.0 | 9.0 | 9.0 |
4 | 5.0 | 5.0 | NaN | 9.0 | NaN |