2014-01-24 44 views
4

我期望使用熊猫rolling_window函数以及非boxcar(理想情况下为hamming)以外的窗口类型来“平滑”定期采样的30秒时间序列数据。然而,到目前为止我已经尝试应用,在变化的窗长度为2〜100的所有窗口,出现在平滑的数据偏移至更低的值,例如: Plot of raw data (light blue) and data run through <code>pd.rolling_window(data,2,'hamming')</code>大熊猫滚动窗口似乎引入滚动数据的偏移量

原始数据的图(浅蓝色)和数据通过pd.rolling_window(data,2,'hamming')运行。

显然,偏移量随时间而变化。

这个结果并不是我所期望的 - 相反,我希望过滤的数据集位于原始数据集之上。

对这里可能发生的事情的任何解释都会很好。

+0

你为什么特别想用'hamming'?它适合你的数据集吗? – TomAugspurger

+0

啊 - 我想我已经意外地越过了'汉明'和'汉宁'。 '汉宁'并不是一个选项,所以我不得不对此进行进一步的考虑,但关键的是我已经尝试了各种过滤器,包括'三角形'这将是适当的,他们都(除了'boxcar')产生相同的'胶印'系列。 – ajt

+0

我对信号处理一无所知,但在计量经济学中,您需要注意非平稳时间序列。也许首先尝试去消除趋势,或者查看[statsmodels的时间序列过滤器](http://statsmodels.sourceforge.net/devel/tsa.html#other-time-series-filters) – TomAugspurger

回答

0

尝试使用rolling_window的center=True参数。

+0

我敢肯定,ajt意味着*垂直*偏移量,而不是水平偏移量。 – zbyszek