朱莉娅的移动平均线

cle*_*lex 3 statistics moving-average julia

我想在 Julia 中计算数组的简单移动平均值。我有一个简单的数组,但我发现的所有包都需要一个 TimeArray 来计算移动平均值。有没有不需要我人为创建 TimeArray 的包?

Prz*_*fel 6

关于什么:

moving_average(vs,n) = [sum(@view vs[i:(i+n-1)])/n for i in 1:(length(vs)-(n-1))]
Run Code Online (Sandbox Code Playgroud)

这可以通过制定标准 for 循环、预先分配结果数组以及在每次迭代中仅减去和添加输入数组的一个元素来进一步优化。但是,对于大多数应用程序,上面的简单代码就足够了。

  • 作为补充说明:可以使用“Statistics”模块中的“mean”来代替“sum”。然后,您可以使用“skipmissing”扩展此代码以更轻松地处理“missing”(如果需要的话)。 (2认同)