Документация Engee

Корреляционный анализ сигналов

Этот пакет содержит функции для выполнения корреляционного анализа последовательных сигналов.

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

autocov(x, [lags]; demean=true)

Вычисляет автоковариацию для вектора или матрицы x; при необходимости можно указать запаздывания lags, в которых должна вычисляться автоковариация. demean указывает, следует ли вычесть среднее значение x из x перед вычислением автоковариации.

Если x — вектор, возвращает вектор той же длины, что и lags. Если x — матрица, возвращает матрицу размера (length(lags), size(x,2)), в которой каждый результирующий столбец соответствует столбцу в x.

Если запаздывания не заданы, в качестве них используются целые числа от 0 до min(size(x,1)-1, 10*log10(size(x,1))).

Результат не нормализуется. Если требуется нормализация, см. описание функции autocor.

autocov!(r, x, lags; demean=true)

Вычисляет автоковариацию для вектора или матрицы x в lags и сохраняет результат в r. demean указывает, следует ли вычесть среднее значение x из x перед вычислением автоковариации.

Если x — вектор, r должно быть вектором той же длины, что и lags. Если x — матрица, r должно быть матрицей размера (length(lags), size(x,2)), в которой каждый результирующий столбец соответствует столбцу в x.

Результат не нормализуется. Если требуется нормализация, см. описание метода autocor!.

autocor(x, [lags]; demean=true)

Вычисляет функцию автокорреляции (ФАК) для вектора или матрицы x; при необходимости можно указать запаздывания lags. demean указывает, следует ли вычесть среднее значение x из x перед вычислением ФАК.

Если x — вектор, возвращает вектор той же длины, что и lags. Если x — матрица, возвращает матрицу размера (length(lags), size(x,2)), в которой каждый результирующий столбец соответствует столбцу в x.

Если запаздывания не заданы, в качестве них используются целые числа от 0 до min(size(x,1)-1, 10*log10(size(x,1))).

Результат нормализуется на дисперсию x, так что автокорреляция при запаздывании 0 равна 1. Ненормализованную форму см. в описании autocov.

autocor!(r, x, lags; demean=true)

Вычисляет функцию автокорреляции (ФАК) для вектора или матрицы x в lags и сохраняет результат в r. demean указывает, следует ли вычесть среднее значение x из x перед вычислением ФАК.

Если x — вектор, r должно быть вектором той же длины, что и lags. Если x — матрица, r должно быть матрицей размера (length(lags), size(x,2)), в которой каждый результирующий столбец соответствует столбцу в x.

Результат нормализуется на дисперсию x, так что автокорреляция при запаздывании 0 равна 1. Ненормализованную форму см. в описании autocov!.

Взаимная ковариация и взаимная корреляция

crosscov(x, y, [lags]; demean=true)

Вычисляет функцию взаимной ковариации (ФВК) между векторами или матрицами вещественных значений x и y; при необходимости можно указать запаздывания lags. Аргумент demean указывает, следует ли вычесть соответствующие средние значения из x и y перед вычислением ФВК.

Если x и y — векторы, возвращает вектор той же длины, что и lags. В противном случае вычисляет взаимную ковариацию между каждой парой столбцов в x и y.

Если запаздывания не заданы, в качестве них используются целые числа от -min(size(x,1)-1, 10*log10(size(x,1))) до min(size(x,1), 10*log10(size(x,1))).

Результат не нормализуется. Если требуется нормализация, см. описание функции crosscor.

crosscov!(r, x, y, lags; demean=true)

Вычисляет функцию взаимной ковариации (ФВК) между векторами или матрицами вещественных значений x и y в lags и сохраняет результат в r. Аргумент demean указывает, следует ли вычесть соответствующие средние значения из x и y перед вычислением ФВК.

Если x и y — векторы, r должно быть вектором той же длины, что и lags. Если x — матрица, а y — вектор, r должно быть матрицей размером (length(lags), size(x, 2)); если x — вектор, а y — матрица, r должно быть матрицей размером (length(lags), size(y, 2)). Если x и y — матрицы, r должно быть трехмерным массивом размером (length(lags), size(x, 2), size(y, 2)).

Результат не нормализуется. Если требуется нормализация, см. описание функции crosscor!.

crosscor(x, y, [lags]; demean=true)

Вычисляет взаимную корреляцию между векторами или матрицами вещественных значений x и y; при необходимости можно указать запаздывания lags. Аргумент demean указывает, следует ли вычесть соответствующие средние значения из x и y перед вычислением взаимной корреляции.

Если x и y — векторы, возвращает вектор той же длины, что и lags. В противном случае вычисляет взаимную ковариацию между каждой парой столбцов в x и y.

Если запаздывания не заданы, в качестве них используются целые числа от -min(size(x,1)-1, 10*log10(size(x,1))) до min(size(x,1), 10*log10(size(x,1))).

Результат нормализуется по sqrt(var(x)*var(y)). Ненормализованную форму см. в описании crosscov .

crosscor!(r, x, y, lags; demean=true)

Вычисляет взаимную корреляцию между векторами или матрицами вещественных значений x и y в lags и сохраняет результат в r. Аргумент demean указывает, следует ли вычесть соответствующие средние значения из x и y перед вычислением взаимной корреляции.

Если x и y — векторы, r должно быть вектором той же длины, что и lags. Если x — матрица, а y — вектор, r должно быть матрицей размером (length(lags), size(x, 2)); если x — вектор, а y — матрица, r должно быть матрицей размером (length(lags), size(y, 2)). Если x и y — матрицы, r должно быть трехмерным массивом размером (length(lags), size(x, 2), size(y, 2)).

Результат нормализуется по sqrt(var(x)*var(y)). Ненормализованную форму см. в описании crosscov! .

Функция частной автокорреляции

pacf(X, lags; method=:regression)

Вычисляет функцию частной автокорреляции (ФЧАК) для вектора или матрицы вещественных значений X в lags. Аргумент method определяет метод оценки. Допускаются значения :regression, при котором частная автокорреляция вычисляется посредством моделей последовательной регрессии, и :yulewalker, при котором частная автокорреляция вычисляется с помощью уравнений Юла-Уокера.

Если x — вектор, возвращает вектор той же длины, что и lags. Если x — матрица, возвращает матрицу размера (length(lags), size(x, 2)), в которой каждый результирующий столбец соответствует столбцу в x.

pacf!(r, X, lags; method=:regression)

Вычисляет функцию частной автокорреляции (ФЧАК) для матрицы X в lags и сохраняет результат в r. Аргумент method определяет метод оценки. Допускаются значения :regression, при котором частная автокорреляция вычисляется посредством моделей последовательной регрессии, и :yulewalker, при котором частная автокорреляция вычисляется с помощью уравнений Юла-Уокера.

r должно быть матрицей размером (length(lags), size(x, 2)).