autocorr

Демонстрационная автокорреляция

Описание

пример

autocorr(y) строит демонстрационную автокорреляционную функцию (ACF) одномерных, стохастических временных рядов y с доверительными границами.

пример

autocorr(y,Name,Value) дополнительные опции использования заданы одним или несколькими аргументами пары "имя-значение". Например, autocorr(y,'NumLags',10,'NumSTD',2) строит демонстрационный ACF y для 10 задержки и доверительные границы отображений, состоящие из 2 стандартные погрешности.

пример

acf = autocorr(___) возвращает демонстрационный ACF y использование любого из входных параметров в предыдущих синтаксисах.

пример

[acf,lags,bounds] = autocorr(___) дополнительно возвращает числа задержки, что MATLAB® используется для расчета ACF, и также возвращает аппроксимированные верхние и более низкие доверительные границы.

autocorr(ax,___) графики на осях заданы ax вместо текущей системы координат (gca). ax может предшествовать любой из комбинаций входных аргументов в предыдущих синтаксисах.

[acf,lags,bounds,h] = autocorr(___) строит демонстрационный ACF y и дополнительно возвращает указатели на нанесенные на график графические объекты. Используйте элементы h изменить свойства графика после того, как вы создаете его.

Примеры

свернуть все

Задайте модель MA (2):

yt=εt-0.5εt-1+0.4εt-2,

где εt является Гауссовым со средним значением 0 и отклонением 1.

rng(1); % For reproducibility
Mdl = arima('MA',{-0.5 0.4},'Constant',0,'Variance',1)
Mdl = 
  arima with properties:

     Description: "ARIMA(0,0,2) Model (Gaussian Distribution)"
    Distribution: Name = "Gaussian"
               P: 0
               D: 0
               Q: 2
        Constant: 0
              AR: {}
             SAR: {}
              MA: {-0.5 0.4} at lags [1 2]
             SMA: {}
     Seasonality: 0
            Beta: [1×0]
        Variance: 1

Симулируйте 1 000 наблюдений от Mdl.

y = simulate(Mdl,1000);

Вычислите ACF для 20 задержек. Задайте это yt модель MA (2), то есть, ACF эффективно 0 после второй задержки.

[acf,lags,bounds] = autocorr(y,'NumMA',2);
bounds
bounds = 2×1

    0.0843
   -0.0843

bounds (-0.0843, 0.0843), которые являются верхними и более низкими доверительными границами.

Постройте ACF.

autocorr(y)

ACF убегает после второй задержки. Это поведение показательно из MA (2) процесс.

Задайте мультипликативный сезонный ARMA (2,0,1)×(3,0,0)12 модель:

(1-0.75L-0.15L2)(1-0.9L12+0.5L24-0.5L36)yt=2+εt-0.5εt-1,

где εt является Гауссовым со средним значением 0 и отклонением 1.

Mdl = arima('AR',{0.75,0.15},'SAR',{0.9,-0.5,0.5},...
    'SARLags',[12,24,36],'MA',-0.5,'Constant',2,...
    'Variance',1);

Симулируйте данные из Mdl.

rng(1); % For reproducibility
y = simulate(Mdl,1000); 

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

figure
autocorr(y)

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

Постройте ACF для 40 задержек.

figure
autocorr(y,'NumLags',40,'NumSTD',3)

Коррелограмма показывает большие корреляции в задержках 12, 24, и 36.

Несмотря на то, что различные оценки демонстрационной автокорреляционной функции существуют, autocorr использует форму в Поле, Дженкинсе и Рейнселе, 1994. В их оценке они масштабируют корреляцию в каждой задержке демонстрационным отклонением (var(y,1)) так, чтобы автокорреляция в задержке 0 была единицей. Однако определенные приложения требуют перемасштабирования нормированного ACF другим фактором.

Симулируйте 1 000 наблюдений от стандартного Распределения Гаусса.

rng(1); % For reproducibility
y = randn(1000, 1);

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

[normalizedACF, lags] = autocorr(y,'NumLags',10);
unnormalizedACF = normalizedACF*var(y,1);

Сравните первые 10 задержек демонстрационного ACF с и без нормализации.

[lags  normalizedACF  unnormalizedACF]
ans = 11×3

         0    1.0000    0.9960
    1.0000   -0.0180   -0.0180
    2.0000    0.0536    0.0534
    3.0000   -0.0206   -0.0205
    4.0000   -0.0300   -0.0299
    5.0000   -0.0086   -0.0086
    6.0000   -0.0108   -0.0107
    7.0000   -0.0116   -0.0116
    8.0000    0.0309    0.0307
    9.0000    0.0341    0.0340
      ⋮

Входные параметры

свернуть все

Наблюдаемые одномерные временные ряды, для которых MATLAB оценивает или строит ACF в виде числового вектора. Последний элемент y содержит последнее наблюдение.

Задайте недостающие наблюдения с помощью NaN. autocorr функционируйте обрабатывает отсутствующие значения как отсутствующий полностью наугад.

Типы данных: double

Оси, на которых можно построить в виде Axes объект.

По умолчанию, autocorr графики к текущей системе координат (gca).

Аргументы в виде пар имя-значение

Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: autocorr(y,'NumLags',10,'NumSTD',2) строит демонстрационный ACF y для 10 задержки и доверительные границы отображений, состоящие из 2 стандартные погрешности.

Количество задержек в демонстрационном ACF в виде разделенной запятой пары, состоящей из 'NumLags' и положительное целое число. autocorr использование изолирует 0:NumLags оценить ACF.

Значением по умолчанию является min ([20, T – 1]), где T эффективный объем выборки y.

Пример: autocorr(y,'NumLags',10) строит демонстрационный ACF y для задержек 0 через 10.

Типы данных: double

Количество задержек в теоретической модели MA yВ виде разделенной запятой пары, состоящей из 'NumMA' и неотрицательное целое число меньше, чем NumLags.

autocorr использование NumMA оценить доверительные границы.

  • Для задержек> NumMA, autocorr приближение Бартлетта использования [1], чтобы оценить стандартные погрешности под предположением модели.

  • Если NumMA= 0 , затем autocorr принимает тот y Гауссов бело-шумовой процесс длины n. Следовательно, стандартная погрешность приблизительно 1/T, где T является эффективным объемом выборки y.

Пример: autocorr(y,'NumMA',10) задает тот y MA (10) процесс и доверительные границы графиков для всех задержек, больше, чем 10.

Типы данных: double

Количество стандартных погрешностей в доверительных границах в виде разделенной запятой пары, состоящей из 'NumSTD' и неотрицательный скаляр. Для всех задержек> NumMA, доверительные границы являются 0 ±NumSTD*σ^, где σ^ предполагаемая стандартная погрешность демонстрационной автокорреляции.

Урожаи по умолчанию аппроксимируют 95% доверительных границ.

Пример: autocorr(y,'NumSTD',1.5) строит ACF y с доверительными границами 1.5 стандартные погрешности далеко от 0.

Типы данных: double

Выходные аргументы

свернуть все

Демонстрационный ACF одномерных временных рядов y, возвращенный как числовой вектор длины NumLags+ 1 .

Элементы acf соответствуйте задержкам 0,1,2..., NumLags (то есть, элементы lags). Навсегда серия y, задержка 0 автокорреляций acf(1)= 1 .

Изолируйте числа, используемые в оценке ACF, возвращенной как числовой вектор длины NumLags+ 1 .

Аппроксимируйте верхние и более низкие доверительные границы автокорреляции, принимающие y MA (NumMA) процесс, возвращенный как двухэлементный числовой вектор.

Указатели на нанесенные на график графические объекты, возвращенные как графический массив. h содержит уникальные идентификаторы графика, которые можно использовать, чтобы запросить или изменить свойства графика.

Больше о

свернуть все

Автокорреляционная функция

autocorrelation function измеряет корреляцию между yt и y t + k, где k = 0..., K и yt является стохастическим процессом.

Согласно [1], автокорреляция для задержки k

rk=ckc0,

где

  • ck=1Tt=1Tk(yty¯)(yt+ky¯).

  • c 0 является демонстрационным отклонением временных рядов.

Предположим, что q является задержкой, вне которой теоретический ACF эффективно 0. Затем предполагаемая стандартная погрешность автокорреляции в задержке k> q

SE(rk)=1T(1+2j=1qrj2).

Если ряд абсолютно случаен, то стандартная погрешность уменьшает до 1/T.

Пропавшие без вести полностью наугад

Наблюдениями за случайной переменной является missing completely at random, если тенденция наблюдения отсутствовать независима и от случайной переменной и от тенденции всех других наблюдений отсутствовать.

Советы

Чтобы построить ACF без доверительных границ, установите 'NumSTD',0.

Алгоритмы

  • Если y полностью наблюдаемый ряд (то есть, он не содержит NaN значения), затем autocorr использует преобразование Фурье, чтобы вычислить ACF в частотном диапазоне, затем преобразует назад в область времени использование обратного преобразования Фурье.

  • Если y не полностью наблюдается (то есть, это содержит по крайней мере один NaN значение), autocorr вычисляет ACF в задержке k во временном интервале и включает в демонстрационное среднее значение только те условия, для которых векторное произведение yt y существует t +k. Следовательно, эффективный объем выборки является случайной переменной.

  • autocorr строит ACF, когда вы не запрашиваете выхода или когда вы запрашиваете четвертый выход.

Ссылки

[1] Поле, G. E. P. Г. М. Дженкинс и Г. К. Рейнсель. Анализ Временных Рядов: Прогнозирование и Управление. 3-й редактор Englewood Cliffs, NJ: Prentice Hall, 1994.

[2] Гамильтон, J. D. Анализ Временных Рядов. Принстон, NJ: Издательство Принстонского университета, 1994.

Представлено до R2006a

Для просмотра документации необходимо авторизоваться на сайте