Экспоненциальное сглаживание прогнозирования для нескольких временных рядов

Я хотел бы прогнозировать 100-кратные временные ряды в r, используя экспоненциальное сглаживание (HW или ARIMA), потому что мои данные очень сезонные. Мои данные в настоящее время настроены как:

Month / Employee1 / Employee2 / Employee3 / ...
2015-01-31 / 1,200,000 / 1,900,000 / 800,000 / ...
2015-02-28 / 1,000,000 / 1,700,000 / 200,000 / ...
... Through 2018-06-30

Я хотел бы прогнозировать с помощью экспоненциального сглаживания для каждого сотрудника на 6 периодов, где частота = 12. Я могу легко сделать это индивидуально, используя прогноз, но я хотел бы запустить всех сотрудников одновременно в один вывод таблицы. Уровень достоверности может быть равен 0 level=c(0,0), так как я хочу один выход.

Любая помощь высоко ценится!

1 ответ

Решение

Я понял это и, надеюсь, это поможет в будущем. Мой набор данных называется "Multiforecast_test"

Сначала я сделал это в TS:

ts_test <- ts(Multiforecast_test, start= c(2015,01), frequency=12)

Затем я использовал lapply для запуска функции auto.arima:

arimaforecast <- lapply(ts_test, function(x) forecast(auto.arima(x), h=6,)$mean)

Вывод для моих тестовых данных приводит к:

arimaforecast

$Volume        Jul        Aug        Sep        Oct        Nov        Dec
2018 1005256299 1107626858  929720018  889901375  814714019  839815505

$Employee1     Jul       Aug       Sep       Oct       Nov       Dec
2018 683043831 800911854 686582210 665243135 613016109 626239041

$Employee2     Jul       Aug       Sep       Oct       Nov       Dec
2018 198639231 206957874 138334667 148160835 118637508 111321392

$Employee3     Jul       Aug       Sep       Oct       Nov       Dec
2018 116508747 129413942 111011512  90294567  87439508  92747072

...

Надеюсь, это поможет кому-то в будущем.

Другие вопросы по тегам