Прибирання сезонних трендів за допомогою сезонного диференціювання
Для часових рядів із сезонними трендами можна застосувати сезонне диференціювання, щоб прибрати ці періодичні коливання. Наприклад, місячні дані можуть мати виразний дванадцятимісячний шаблон. У таких ситуаціях зміни поведінки з року в рік можуть бути цікавішими, ніж зміни з місяця в місяць, адже останні здебільшого повторюють загальний сезонний малюнок.
Функція diff(..., lag = s) обчислює різницю із зсувом s, тобто сезонні зміни довжини s. Для місячних або квартальних даних доречними значеннями s будуть відповідно 12 або 4. За замовчуванням diff() має lag = 1 для першого диференціювання. Як і раніше, сезонно продиференційований ряд матиме на s спостережень менше, ніж початковий ряд.
Ця вправа є частиною курсу
Аналіз часових рядів в R
Інструкції до вправи
- Часовий ряд
xуже завантажено; на сусідньому графіку він коливається від нижче -10 до вище +10. Застосуйте доxфункціюdiff(..., lag = 4)і збережіть результат якdx. - Використайте
ts.plot()для відображення перетвореного рядуdxта зверніть увагу на звужений вертикальний діапазон перетворених даних. - Зробіть два виклики
length(), щоб обчислити кількість спостережень уxтаdxвідповідно.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Generate a diff of x with lag = 4. Save this to dx
dx <-
# Plot dx
# View the length of x and dx, respectively