Estou trabalhando em um alogoritmo em R para automatizar um cálculo de previsão mensal. Estou usando, entre outros, a função ets () do pacote de previsão para calcular a previsão. Está funcionando muito bem.
Infelizmente, para algumas séries temporais específicas, o resultado que recebo é estranho.
Por favor, encontre abaixo o código que estou usando:
train_ts<- ts(values, frequency=12)
fit2<-ets(train_ts, model="ZZZ", damped=TRUE, alpha=NULL, beta=NULL, gamma=NULL,
phi=NULL, additive.only=FALSE, lambda=TRUE,
lower=c(0.0001,0.0001,0.0001,0.8),upper=c(0.9999,0.9999,0.9999,0.98),
opt.crit=c("lik","amse","mse","sigma","mae"), nmse=3,
bounds=c("both","usual","admissible"), ic=c("aicc","aic","bic"),
restrict=TRUE)
ets <- forecast(fit2,h=forecasthorizon,method ='ets')
Por favor, você encontrará abaixo o conjunto de dados do histórico em questão:
values <- c(27, 27, 7, 24, 39, 40, 24, 45, 36, 37, 31, 47, 16, 24, 6, 21,
35, 36, 21, 40, 32, 33, 27, 42, 14, 21, 5, 19, 31, 32, 19, 36,
29, 29, 24, 42, 15, 24, 21)
Aqui, no gráfico, você verá os dados históricos (preto), o valor ajustado (verde) e a previsão (azul). A previsão definitivamente não está alinhada com o valor ajustado.
Você tem alguma idéia de como "vincular" o forecat a estar "alinhado" com as vendas históricas?
ets
. A média / nível dos dados históricos é de cerca de 20 e a média / nível da previsão é de cerca de 50. Não sabe ao certo por que isso aconteceria? você pode executar um básicoets
e ver se obtém os mesmos resultados?