如何用s / t / l / ..表示时间序列中的图案值适用于家庭?

时间:2015-04-04 19:36:49

标签: r apply lapply

添加了可重复的示例:

set.seed(1)
y <- ts(rnorm(28))
y # the series from which 3+4*i pattern is introduced
mean(c(y[3 + 4*0], y[3 + 4*1], y[3 + 4*2], y[3 + 4*3], y[3+4*4], y[3+4*5], y[3+4*6])) #[1] 0.4326433

那么,如何在没有所有这些凌乱的东西的情况下找到0.4326433? 请注意,当时间序列的长度非常大时,写下这个杂乱的东西几乎是不可能的! 顺便说一句,我有“for”解决方案的能力;我不是在问“解决方案”。

2 个答案:

答案 0 :(得分:2)

你可以尝试

mean(y[3+4*(0:6)])
#[1] 0.4326433

答案 1 :(得分:1)

您也可以尝试:

mean(y[seq(3, length(y), 4)])
#[1] 0.4326433