我想预测数百条记录,其中包含一些不同的 alpha 和 beta 循环。我的目标是在 RStudio 中通过 2 个 beta 样本(0.1 和 0.9)循环 holt 结果。这是代码:
library(forecast)
library(tidyverse)
library(magicfor)
magic_for(silent = TRUE)
dataset<- c(100,200,300,400,500,600,700,800,900,800,700)
x<-c(0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9)
#-----------HOLT FOR BETA 0.1------------------
for (alpha in x) {
des<-holt(dataset, alpha = alpha, beta=0.1)
mape<-mean(abs(des$residuals)/des$x)*100
put(beta=0.1, mape)
}
result01<-magic_result_as_dataframe()
#-----------HOLT FOR BETA 0.9------------------
for (alpha in x) {
des<-holt(dataset, alpha = alpha, beta=0.9)
mape<-mean(abs(des$residuals)/des$x)*100
put(beta=0.9, mape)
}
result02<-magic_result_as_dataframe()
但我在 beta=0.9 中遇到错误,这是通知:
[1] "Model: ETS(A,A,N)" Error in ets(x, "AAN", alpha = alpha, beta = beta, phi = phi, damped = damped, : No model able to be fitted
我发现问题出在数据集上,如果我放置 8 条或更少的记录,它可以预测 beta=0.1、0.9 以及各种 alpha 和 beta 样本。但如果它有超过 8 条记录,它只能预测 beta=0.1 和更低(0.1、0.01、0.001、0.0001 仅)但如果 beta 高于 0.1 则可能是错误的
你能帮我解决这个问题吗?提前致谢