Обнаружьте автокорреляцию

Вычислите демонстрационный ACF и PACF

В этом примере показано, как вычислить демонстрационную автокорреляционную функцию (ACF) и частичная автокорреляционная функция (PACF), чтобы качественно оценить автокорреляцию.

Временные ряды составляют 57 дней подряд сверхкоротких замыканий от бензобака в Колорадо.

Шаг 1. Загрузите данные.

Загрузите временные ряды сверхкоротких замыканий.

load('Data_Overshort.mat')
Y = Data;
N = length(Y);

figure
plot(Y)
xlim([0,N])
title('Overshorts for 57 Consecutive Days')

Figure contains an axes object. The axes object with title Overshorts for 57 Consecutive Days contains an object of type line.

Ряд, кажется, является стационарным.

Шаг 2. Постройте демонстрационный ACF и PACF.

Постройте демонстрационную автокорреляционную функцию (ACF) и частичная автокорреляционная функция (PACF).

figure
subplot(2,1,1)
autocorr(Y)
subplot(2,1,2)
parcorr(Y)

Figure contains 2 axes objects. Axes object 1 with title Sample Autocorrelation Function contains 4 objects of type stem, line. Axes object 2 with title Sample Partial Autocorrelation Function contains 4 objects of type stem, line.

Демонстрационный ACF и PACF показывают значительную автокорреляцию. Демонстрационный ACF имеет значительную автокорреляцию в задержке 1. Демонстрационный PACF имеет значительную автокорреляцию в задержках 1, 3, и 4.

Отличное сокращение ACF, объединенного с более постепенным затуханием PACF, предполагает, что модель MA (1) может подходить для этих данных.

Шаг 3. Сохраните демонстрационный ACF и значения PACF.

Запасите демонстрационный ACF и значения PACF, чтобы отстать 15.

acf = autocorr(Y,'NumLags',15);
pacf = parcorr(Y,'NumLags',15);
[length(acf) length(pacf)]
ans = 1×2

    16    16

Выходные параметры acf и pacf векторы, хранящие демонстрационную автокорреляцию и частичную автокорреляцию в задержках 0, 1..., 15 (в общей сложности 16 задержек).

Проведите Q-тест Ljung-поля

В этом примере показано, как провести Q-тест Ljung-поля для автокорреляции.

Временные ряды составляют 57 дней подряд сверхкоротких замыканий от бензобака в Колорадо.

Шаг 1. Загрузите данные.

Загрузите временные ряды сверхкоротких замыканий.

load('Data_Overshort.mat')
Y = Data;
N = length(Y);

figure
plot(Y)
xlim([0,N])
title('Overshorts for 57 Consecutive Days')

Figure contains an axes object. The axes object with title Overshorts for 57 Consecutive Days contains an object of type line.

Данные, кажется, колеблются вокруг постоянного среднего значения, таким образом, никакие преобразования данных не необходимы прежде, чем провести Q-тест Ljung-поля.

Шаг 2. Проведите Q-тест Ljung-поля.

Проведите Q-тест Ljung-поля для автокорреляции в задержках 5, 10, и 15.

[h,p,Qstat,crit] = lbqtest(Y,'Lags',[5,10,15])
h = 1x3 logical array

   1   1   1

p = 1×3

    0.0016    0.0007    0.0013

Qstat = 1×3

   19.3604   30.5986   36.9639

crit = 1×3

   11.0705   18.3070   24.9958

Все выходные параметры являются векторами с тремя элементами, соответствуя тестам в каждой из трех задержек. Первый элемент каждого выхода соответствует тесту в задержке 5, второй элемент соответствует тесту в задержке 10, и третий элемент соответствует тесту в задержке 15.

Тестовые решения хранятся в векторном h. Значение h = 1 средние значения отклоняют нулевую гипотезу. Векторный p содержит p-значения для трех тестов. В α=0.05 уровень значения, нулевая гипотеза никакой автокорреляции отклоняется во всех трех задержках. Заключение состоит в том, что существует значительная автокорреляция в ряду.

Тестовая статистика и χ2 критические значения даны в выходных параметрах Qstat и crit, соответственно.

Ссылки

[1] Броквелл, P. J. и Р. А. Дэвис. Введение во Временные ряды и Прогнозирование. 2-й редактор Нью-Йорк, Нью-Йорк: Спрингер, 2002.

Смотрите также

Приложения

Функции

Связанные примеры

Больше о