Nội dung text ПР №9. Автокорреляция. ARMA.pdf
Количественной характеристикой сходства между значениями ряда с учетом временных лагов в соседних точках является автокорреляционная функция (или просто автокорреляция, ACF), которая задаётся следующим соотношением: Также проанализировать количественные характеристики временного ряда можно при помощи частичной автокорреляционной функций (PACF), которая исключает влияние промежуточных лагов. Как вывести коэффициент автокорреляции для конкретного лага на python? a) С помощью pandas: import pandas as pd import numpy as np # Пример данных: временной ряд из 10 наблюдений data = [10, 15, 20, 25, 30, 35, 40, 45, 50, 55] series = pd.Series(data) lag = 1 # Нужный лаг autocorr = series.autocorr(lag=lag) print(f'Автокорреляция на лаге {lag}: {autocorr:.2f}') b) С помощью numpy: import pandas as pd import numpy as np # Пример данных: временной ряд из 10 наблюдений data = [10, 15, 20, 25, 30, 35, 40, 45, 50, 55] series = pd.Series(data) def autocorrelation(series, lag): # Сдвигаем ряд на заданный лаг shifted = series[lag:] original = series[:-lag] # Расчёт коэффициента корреляции Пирсона return np.corrcoef(original, shifted)[0, 1] lag = 1 autocorr = autocorrelation(series, lag) print(f'Автокорреляция на лаге {lag}: {autocorr:.2f}') Автокорреляционная функция (ACF) измеряет прямую корреляцию между значением временного ряда и его собственным значением на определенном временном интервале