我有一个简单的时间序列,并且正在努力估计在移动窗口内的方差。更具体地说,我无法弄清楚实现滑动窗口函数的一些问题。例如,在使用NumPy和窗口大小=20时:
def rolling_window(a, window):
shape = a.shape[:-1] + (a.shape[-1] - window + 1, window)
strides = a.strides + (a.strides[-1],)
return np.lib.stride_tricks.as_strided(a, shape=shape, strides=strides)
rolling_window(data, 20)
np.var(rolling_window(data, 20), -1)
datavar=np.var(rolling_window(data, 20), -1)
也许在我的思路中哪里出现了错误。是否有人知道一个简单的方法来做到这一点?任何帮助/建议都会非常受欢迎。
std
,但评论仍然不正确。我会修复的... 完成 - sfjac