计算非重叠移动平均线

时间:2014-10-24 01:32:40

标签: r moving-average

我正在尝试计算R中时间序列的移动平均值,但我的结果不成功。

这就是我所做的:

样本载体:

test <- sample(1:100, 50)

testrunning <- running(test, width=10, by=10, FUN=mean, trim=0, na.rm=TRUE)

它产生一个结果,但结果不是我数据中窗口的平均值;相反,它是窗口的平均值。像这样:

testrunning

## 1:10 11:20 21:30 31:40 41:50 
## 5.5  15.5  25.5  35.5  45.5 

编辑:running()在包gtools

1 个答案:

答案 0 :(得分:3)

我想我发现了这个问题。它应该是fun而不是FUN

running(test, width = 10, by = 10, fun = mean, trim = 0, na.rm = TRUE)

你也可以这样做:

sapply(split(test, (seq_along(test) - 1) %/% 10), mean)