Data Science Academy · Урок

Стационарность и дифференцирование

Подготовка ряда к моделированию

Урок 3 из 413 шагов

«Стационарность и дифференцирование» — бесплатный урок Data Science Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Data Science Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Data Science Academy содержит 4 уроков всего.

Моделям нравятся стабильные данные

Большинство моделей прогнозирования предполагают, что ряд ведёт себя одинаково на протяжении времени. У этого свойства есть название: стационарность. 🎯

Что означает стационарность

У стационарного ряда среднее и разброс стабильны и не смещаются со временем. Его статистический характер остаётся неизменным.

Тренды нарушают стационарность

Растущий тренд означает, что среднее постоянно увеличивается, поэтому ряд становится нестационарным. Многие модели будут испытывать трудности, пока вы это не исправите.

Сезонность тоже её нарушает

Повторяющиеся сезонные колебания заставляют среднее повышаться и понижаться циклически. Такой изменяющийся рисунок также означает нестационарность.

Проверка ADF

Вам не нужно гадать. Проверка ADF оценивает стационарность и возвращает значение p, которое можно интерпретировать.

from statsmodels.tsa.stattools import adfuller
result = adfuller(sales)

Как читать значение p

Если значение p в проверке ADF меньше 0,05, ряд, вероятно, стационарен. Если оно выше, скорее всего, в ряде всё ещё есть тренд, который нужно удалить.

На помощь приходит дифференцирование

Дифференцирование заменяет каждое значение величиной его изменения по сравнению с предыдущим шагом. Этот простой приём часто устраняет тренд.

diffed = sales.diff()

Почему оно удаляет тренды

Если смотреть на изменения, а не на уровни, постоянный подъём превращается в почти горизонтальную линию, колеблющуюся вокруг нуля, то есть в стационарный ряд.

Удалите первый NaN

Из первой строки нечего вычитать, поэтому diff оставляет в ней значение NaN. Удалите эту строку перед проверкой или построением модели.

diffed = sales.diff().dropna()

Повторное дифференцирование

Если одного прохода недостаточно, продифференцируйте результат второй раз. Число таких проходов становится параметром d в ARIMA.

Сезонное дифференцирование

Чтобы устранить годовой цикл, вычтите значение, отстоящее на 12 шагов. Такое сезонное дифференцирование напрямую воздействует на повторяющийся рисунок.

seasonal = sales.diff(12)

Быстрая проверка

Проверка ADF для исходного ряда возвращает значение p, равное 0,40. На что это указывает?

Итоги: сделайте ряд стабильным

Вы научились проверять стационарность с помощью ADF и удалять тренды и циклы дифференцированием перед построением модели.

Можно начать бесплатно

Изучай Python с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
30
Уроки
120

Часто задаваемые вопросы

Урок «Стационарность и дифференцирование» бесплатный?

Да — полный текст урока «Стационарность и дифференцирование» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Data Science Academy, подпишись на CoddyKit PRO. Курс Data Science Academy содержит 4 уроков всего.

Чему я научусь в уроке «Стационарность и дифференцирование»?

Подготовка ряда к моделированию Ты практикуешь Data Science Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Data Science Academy?

Предыдущий опыт не требуется. Data Science Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Стационарность и дифференцирование»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Data Science Academy?

Да. Каждый урок Data Science Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Тренд, сезонность и шум
  2. Скользящие окна и лаги
  3. Стационарность и дифференцирование
  4. Первый базовый прогноз
← Назад к Data Science Academy