Сезонное дифференцирование для достижения стационарности
При работе с сезонными данными разности часто вычисляются между наблюдениями одного и того же сезона в последовательных годах, а не между соседними периодами. Например, для квартальных данных берётся разность между первым кварталом текущего года и первым кварталом предыдущего. Такой подход называется сезонным дифференцированием.
Иногда к одному ряду необходимо применить и сезонное дифференцирование, и дифференцирование с лагом 1, то есть вычислить разности от разностей.
В этом упражнении вы будете применять дифференцирование и преобразования одновременно, чтобы сделать временной ряд стационарным. Используемый набор данных — h02, содержащий 17 лет ежемесячных данных о продажах кортикостероидных препаратов в Австралии. Он уже загружен в вашу рабочую среду.
Это упражнение является частью курса
Прогнозирование в R
Инструкции к упражнению
- Постройте график данных, чтобы оценить тренд и сезонность.
- Примените
log()к даннымh02, а затем выполните сезонное дифференцирование, указав подходящее значениеlagв функцииdiff(). Сохраните результат в переменнуюdifflogh02. - Постройте график полученного логарифмически преобразованного и дифференцированного ряда.
- Поскольку
difflogh02по-прежнему выглядит нестационарным, примените к нему ещё одно дифференцирование с лагом 1, снова вызвавdiff(), и сохраните результат вddifflogh02. Постройте график полученного ряда. - Постройте ACF итогового ряда
ddifflogh02, используя подходящую функцию.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Plot the data
___
# Take logs and seasonal differences of h02
difflogh02 <- diff(log(___), lag = ___)
# Plot difflogh02
___
# Take another difference and plot
ddifflogh02 <- ___
___
# Plot ACF of ddifflogh02
___