Выполнение расширенного теста Дикки-Фуллера (ADF) на Python

Дополненный тест Дикки-Фуллера (ADF) – это статистический тест, обычно используемый для определения того, является ли временной ряд стационарным или нестационарным. В Python вы можете выполнить тест ADF, используя различные библиотеки и методы. Вот несколько методов, которые вы можете использовать:

  1. StatsModels: Библиотека StatsModels обеспечивает реализацию теста ADF через функцию adfuller. Вы можете импортировать его следующим образом:
from statsmodels.tsa.stattools import adfuller

Затем вы можете передать данные временных рядов в функцию adfuller, чтобы выполнить тест ADF и получить статистику теста и значения p.

  1. Pandas: Библиотека Pandas также предлагает тест ADF с помощью функции adfв модуле adf_test. Чтобы использовать его, вам необходимо импортировать его следующим образом:
from pandas.core import datetools
from pandas import Series
from statsmodels.tsa.stattools import adfuller
def adf_test(timeseries):
    dftest = adfuller(timeseries, autolag='AIC')
    dfoutput = Series(dftest[0:4], index=['Test Statistic', 'p-value', '#Lags Used', 'Number of Observations Used'])
    return dfoutput

Затем вы можете вызвать функцию adf_test, передав данные временного ряда в качестве аргумента.

  1. PyCaret: PyCaret — это библиотека Python для автоматизированного машинного обучения. Он также обеспечивает реализацию теста ADF через функцию get_stationarity. Вы можете импортировать его следующим образом:
from pycaret.internal.preprocess import get_stationarity

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

Это всего лишь несколько примеров методов, доступных для выполнения теста ADF в Python. Не забудьте соответствующим образом предварительно обработать данные перед применением теста.