library(forecast)
library(sophisthse)
library(tidyverse)

Загрузим данные о коммерческом грузообороте транспорта в России.

# если нет интернета, следует убрать eval=FALSE, чтобы загрузить данные из локального файла
transp <- read_rds('data/transp.RDS')

Посмотрим, как выглядит ряд на графике.

transp %>%
  autoplot()

Посмотрим на фрагмент ряда с выбросом…

transp %>%
  window(start = c(2013, 1), end = c(2015, 1)) %>%
  autoplot()

Нет данных за январь 2014 года…

Удалим выбросы…

transp_fixed <- transp %>%
  tsclean()

Сравним исходный и очищенный временной ряд…

autoplot(transp, series = 'Исходный ряд') +
  autolayer(transp_fixed, series = 'Очищенный ряд')

Восстановление затронуло пропущенное наблюдение в январе 2014 года и несколько периодов в кризисном 2009 году.

Старые данные не репрезентативны, оставляем с 2012 года…

transp_subset <- transp_fixed %>% 
  window(start = c(2012, 1)) #год и месяц начала

Строим прогноз.

transp_forecast <- transp_subset %>%
  forecast(h = 24)

autoplot(transp_forecast) +
  labs(title = "Прогноз коммерческого грузооборота транспорта РФ, млрд. т-км",
       x = NULL,
       y = NULL,
       fill = "Доверительный\nинтервал")