moving averge 即滑动平均,时间序列处理中常见的方法,简单来说,就是对于一个给定数列,设定一个窗口值N,依次取第1项第N项,第2项第N+1项,第3项~第N+2项的平均值,以此类推。
1 | import matplotlib.pyplot as plt |
可以看到,趋势逐渐变得平滑,即对局部震荡不敏感。
使用numpy.convolve是一种更方便的方法,值得注意的是其有三种mode,分别是’full’(单个重叠也计算), ‘same’(强制等长), ‘valid’(完全重叠),
1 | def fast_moving_average(x, N, mode): |
参考自斗大熊的博客MovingAverage-滑动平均 – WTF Daily Blog