R 中的一步预测
One-step ahead forecasts in R
我在 R 中使用 forecast
函数多次循环(12 个月) for 但我想使用准确性来比较水平时间 =12 和提前一步的预测。我的问题是如何存储 12 次的结果以准确使用它。
for (i in 1:12) {
demfit <- ets(Dem2)
f <- forecast(demfit, 1)
Dem2[length(Dem2)+1] <- f$mean[1]
}
accuracy(f,Test)
它只计算最后一点预测的准确度 12
但是,我正在为 12 个预测寻找这个:
fit <- ets(Dem2)
f1 <- forecast(fit, 12)
accuracy(f1, Test)
我想你想要做的基本上是在 f
列表中存储 12 个值,当循环完成时也在 accuracy
列表中存储。
方法如下(将其保存在列表中):
f <- list()
for (i in 1:12) {
demfit <- ets(Dem2)
f[[i]] <- forecast(demfit, 1) #start filling the f list with values
Dem2[length(Dem2)+1] <- f$mean[1]
}
f <- unlist(f)
accuracy(f,Test)
和 f
本质上是一个包含 12 个值的列表,每次迭代一个值。 myacc
.
相同
我在 R 中使用 forecast
函数多次循环(12 个月) for 但我想使用准确性来比较水平时间 =12 和提前一步的预测。我的问题是如何存储 12 次的结果以准确使用它。
for (i in 1:12) {
demfit <- ets(Dem2)
f <- forecast(demfit, 1)
Dem2[length(Dem2)+1] <- f$mean[1]
}
accuracy(f,Test)
它只计算最后一点预测的准确度 12
但是,我正在为 12 个预测寻找这个:
fit <- ets(Dem2)
f1 <- forecast(fit, 12)
accuracy(f1, Test)
我想你想要做的基本上是在 f
列表中存储 12 个值,当循环完成时也在 accuracy
列表中存储。
方法如下(将其保存在列表中):
f <- list()
for (i in 1:12) {
demfit <- ets(Dem2)
f[[i]] <- forecast(demfit, 1) #start filling the f list with values
Dem2[length(Dem2)+1] <- f$mean[1]
}
f <- unlist(f)
accuracy(f,Test)
和 f
本质上是一个包含 12 个值的列表,每次迭代一个值。 myacc
.