Не вложенная двойная сезонность с использованием dshw() в R
Я пытаюсь использовать dshw(), чтобы справиться с двойной сезонностью - в моем случае, ежедневными данными с недельной (7-дневной) и однолетней (365-дневной) сезонностью. Тем не менее, я получаю следующую ошибку при запуске моего кода:
data<-msts(1:1000, seasonal.periods=c(7,365), ts.frequency=365, start=2012)
decompose<-dshw(data, period1=7, period2=365)
-- Error in dshw(data, period1 = 7, period2 = 365) : Seasonal periods are not nested
Как вы думаете, что является лучшей практикой, чтобы обойти эту проблему? Должен ли я просто использовать stl дважды для моих данных (для частот 7 и 365 дней)? Или как-то изменить данные?
Спасибо!
1 ответ
Попробуйте tbats()
модель вместо. Он был специально разработан, чтобы избежать этой проблемы. DSHW является частным случаем модели TBATS.
decompose <- tbats(data)
Если вы определите period2 в терминах period1, вы не получите ошибку.
Вместо:
разложить<-dshw (данные, период1 = 7, период2 = 365)
использовать:
разложить<-dshw (данные, период1 = 7, период2 = 7 * 52)