Я пробую нисходящий метод для прогнозирования спроса на товары в розничном магазине.
fourier_forecasts = forecast(sales_weekly_hts, h=12,method="tdfp", FUN=function(x) auto.arima(x, xreg=fourier(x, K=12), seasonal=FALSE))
sales_weekly_hts - это объект hts , содержащий 2,5лет еженедельных данных о продажах.
Это дает мне ошибку: -
" Ошибка в прогнозе. Арима (модели, h = h): регрессоры не предоставлены "
Я предполагаю, что ошибка в том, что она не может получить условия Фурье для прогноза вне выборки, но я не понимаю, как решить эту проблему.Разве он не может знать, сколько периодов можно прогнозировать в будущем?
Минимальный воспроизводимый пример: -
library(dplyr)
library(hts)
# creating a time series matrix containing 4 series and 133 weeks random data
min_rep_eg = matrix(data = rnorm(n = 133*4 ,mean = 2), nrow = 133, ncol = 4) %>% ts(frequency = 365.25/7)
# giving names to the 5 time series. These names are used to create the hierarchy.
colnames(min_rep_eg) = c("10011001","10011003","10031021","10031031")
# creating the hts.
min_rep_eg_hts = hts(min_rep_eg, characters = c(4, 4))
min_rep_eg_hts_fc = forecast(min_rep_eg_hts, h=2,method="tdfp", FUN=function(x) auto.arima(x, xreg=fourier(x, K=12), seasonal=FALSE))