У меня есть иерархический временной ряд, ряды нижнего уровня которого демонстрируют периодический спрос. Кажется выгодным использовать пакет Hyndman HTS для оптимального сочетания в иерархии. Также кажется выгодным использовать пакет MAPA Куренцеса для множественного агрегационного прогнозирования прерывистого спроса. По сути, я хочу сделать что-то вроде:
forecast(my_hts, method='comb', fmethod='MAPA')
Однако мне непонятно, могу ли я объединить их вместе, поскольку forecast.gts()
принимает только fmethod=c("ets", "arima", "rw").
Есть ли умный способ передать forecast.gts()
различные методы прогнозирования, не разрывая код?
Пример, поясняющий, что я имею в виду:
library(hts)
library(MAPA)
set.seed(1)
#note intermittent demand of bottom level time series
x <- ts(rpois(365, lambda=0.05), frequency=365, start=2014)
y <- ts(rpois(365, lambda=0.07), frequency=365, start=2014)
#it's easy to make a MAPA forecast for the top-level time series
#but this isn't an optimal hierarchical forecast
mapasimple(x+y)
#it's also easy to make this a HTS and make an optimal hierarchical forecast
#but now I cannot use MAPA
z <- hts(data.frame(x,y)))
z_arima <- forecast(z, fmethod="arima")
z_rw <- forecast(z, fmethod="rw")
z_ets <- forecast(z, fmethod="ets")
#z_MAPA <- ?