熊猫滚动窗口意味着未来

时间:2018-07-23 20:48:33

标签: python pandas rolling-average

我想使用熊猫滚动功能

https://pandas.pydata.org/pandas-docs/version/0.22/generated/pandas.DataFrame.rolling.html

在具有日期时间的pandas数据帧上

汇总未来值。 看来这只能在过去完成,是这样吗?

谢谢!

1 个答案:

答案 0 :(得分:2)

IIUC,您可以使用shift键将计算移回时间。

df = pd.DataFrame({'Data':np.arange(0,11,1)},index=pd.date_range('2018-07-23',periods=11))

df['rolling'] = df.rolling('2D').mean().shift(-1)

print(df)

输出:

            Data  rolling
2018-07-23     0      0.5
2018-07-24     1      1.5
2018-07-25     2      2.5
2018-07-26     3      3.5
2018-07-27     4      4.5
2018-07-28     5      5.5
2018-07-29     6      6.5
2018-07-30     7      7.5
2018-07-31     8      8.5
2018-08-01     9      9.5
2018-08-02    10      NaN