简单移动平均线(移动均值)是否有可靠的递归公式?

机器算法验证 意思是
2022-03-26 12:48:50

我已经尝试了一些递归移动平均公式(以重用先前的输出而不是对n每个 -long 集合求和i)我设法找到但它们都没有产生与裸移动平均值相同的结果。是否有可靠的递归公式可以产生与裸移动均值完全相同(或几乎完全相同)的输出?

2个回答

只需尝试删除窗口的最后一个值并添加新值。

如果

MA(t)=1wi=tw+1tyi

然后

MA(t+1)=MA(t)+y(t+1)y(tw+1)w.

double mean(const double F, const double C, unsigned int *n)
{
  return (F*(*n)+C)/(++*n);
}

F是旧的平均数,C是平均数的新增加。*n是 中的值的数量F这不需要缓冲区。