Лучшая практика в определении нескольких сезонных компонентов в TBATS
Я пытаюсь разложить многосезонные временные ряды. У меня есть данные за 11 лет, взятые с ежедневным интервалом, с учетом високосных дней для високосных лет, которые произошли с 2006 по 2016 год включительно. Временной ряд на самом деле является "разностным рядом". Более конкретно, у меня есть два синусоидальных набора данных, которые измеряют протяженность арктического морского льда и находятся в идеальной фазе, но эти два набора данных получены по-разному. Поэтому я взял набор данных1 - набор данных2 для создания разностного ряда. В серии различий есть некоторая сезонность. Бывают времена года, когда в наборе данных 1 больше льда, чем в наборе данных 2, и наоборот.
Вот как выглядит разностный ряд в виде R 'XTS-объекта' после интерполяции NAN с помощью na.approx (): XTS-объект моего разностного ряда протяженности морского льда
Если бы я лежал каждый год друг на друге, серия различий выглядела бы так: Сезонные отклонения в серии различий
После анализа Фурье я знаю, что в спектре мощности есть три больших всплеска: 335 дней, 175 дней и 118 дней. Я хотел бы посмотреть, возможно ли разложить эти данные в TBATS, поэтому я создал временной ряд 'msts' как:
Diff_msts <- msts(Diff_series, start = c(2006,01,01), end = c(2016,31,12), seasonal.periods = c(335,175,118))
Тем не менее, я не уверен, имеет ли смысл вводить это в TBATS или как составлять графики для полученных компонентов. Вот что я попробовал:
Diff_msts.fit <- tbats(Diff_msts)
plot(Diff_msts.fit)
Я ожидал увидеть что-то похожее на рисунок 3 в De Livera, Hyndman и Snyder 2010: "Прогнозирование временных рядов со сложными сезонными моделями с использованием экспоненциального сглаживания"
Но я получаю только "наблюдаемый" и "уровень", поскольку результаты моего графика выглядят одинаково (я бы опубликовал здесь, но мне нужна более высокая репутация, чтобы сделать это). Я слишком новичок в этой области статистики, чтобы проверить, будет ли мой временной ряд работать с tbats.
Любая помощь или рекомендации будут замечательными. Спасибо.
Небольшое обновление (26.09.17): Когда я изменил season.periods = c(), включив 365,25 в вектор, теперь я получаю различные сезонные компоненты на графике! Однако я не уверен, почему это так? Почему установка вектора на "c(335, 175, 118)" вызывает срабатывание функции TBATS?
Также имеет значение порядок сезонности? Например, анализ Фурье показал, что наибольший пик в спектре мощности приходится на 175 дней. Следует ли заполнять c(season1, season2,...) в порядке сильнейшего или слабого сигнала: c(175, 335, 118)?