Model for multi sesaonal time series in R

5 сообщений / 0 новых
Последнее сообщение
Model for multi sesaonal time series in R

Необходимо спрогнозирвать временной ряд? который имеет как дневную так и недельную сезонность.

Какие модели подходят для мультисезонных временных рядов? Интересует приемущественно те которые есть в R.

 

Сезонность блестяще

Сезонность блестяще улавливается простой линейной регрессией, в данном случае множественной: создаете кучу синусов и косинусов разных периодов колебаний и используете их в качестве внешних (независимых переменны). В matlab это выглядит примерно так:

numCycles = 10;
season = nan(size(valid_dates,1), numCycles*2);
for ii = 1 : numCycles
    tc = cos(2*pi*valid_dates/365.25*ii);
    ts = sin(2*pi*valid_dates/365.25*ii);
    season(:,2*(ii-1)+1) = tc;
    season(:,2*ii) = ts;
end

model_s = LinearModel.fit(season, y, 'linear');

----------------------
Ирина Чучуева,
команда Математического бюро

В моём случае больше подходят

В моём случае больше подходят модели экспоненциального сглаживания т.к. характер прогнозируемого объекта  таков, что свежим данным необходимо уделять большей удельный вес, а не усреднять весь временной ряд. Как быть в данном случае?

Можно попробовать добавить в

Можно попробовать добавить в модель тренд, возможно в вашем случае это подойдет.

trend = 1:size(y,1);
model = LinearModel.fit([season trend], y, 'linear');

----------------------
Ирина Чучуева,
команда Математического бюро

А вообще есть специальная

А вообще есть специальная модель Хольта-Винтерса — экспоненциальное сглаживание с тредном и сезонностью. Я когда-то ее реализовывала, но кода у меня не сохранилось, к сожалению.

----------------------
Ирина Чучуева,
команда Математического бюро

2010 - 2018 © Математическое бюро

Все права защищены в соответствии с законодательством РФ

При полном или частичном использовании материалов ссылка на сайт обязательна