Корреляционный анализ сигналов
Автоковариация и автокорреляция
#
StatsBase.autocov — Function
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.
#
StatsBase.autocov! — Function
autocov!(r, x, lags; demean=true)
Вычисляет автоковариацию для вектора или матрицы x в lags и сохраняет результат в r. demean указывает, следует ли вычесть среднее значение x из x перед вычислением автоковариации.
Если x — вектор, r должно быть вектором той же длины, что и lags. Если x — матрица, r должно быть матрицей размера (length(lags), size(x,2)), в которой каждый результирующий столбец соответствует столбцу в x.
Результат не нормализуется. Если требуется нормализация, см. описание метода autocor!.
#
StatsBase.autocor — Function
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.
#
StatsBase.autocor! — Function
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!.
Взаимная ковариация и взаимная корреляция
#
StatsBase.crosscov — Function
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.
#
StatsBase.crosscov! — Function
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!.
#
StatsBase.crosscor — Function
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 .
#
StatsBase.crosscor! — Function
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! .
Функция частной автокорреляции
#
StatsBase.pacf — Function
pacf(X, lags; method=:regression)
Вычисляет функцию частной автокорреляции (ФЧАК) для вектора или матрицы вещественных значений X в lags. Аргумент method определяет метод оценки. Допускаются значения :regression, при котором частная автокорреляция вычисляется посредством моделей последовательной регрессии, и :yulewalker, при котором частная автокорреляция вычисляется с помощью уравнений Юла-Уокера.
Если x — вектор, возвращает вектор той же длины, что и lags. Если x — матрица, возвращает матрицу размера (length(lags), size(x, 2)), в которой каждый результирующий столбец соответствует столбцу в x.
#
StatsBase.pacf! — Function
pacf!(r, X, lags; method=:regression)
Вычисляет функцию частной автокорреляции (ФЧАК) для матрицы X в lags и сохраняет результат в r. Аргумент method определяет метод оценки. Допускаются значения :regression, при котором частная автокорреляция вычисляется посредством моделей последовательной регрессии, и :yulewalker, при котором частная автокорреляция вычисляется с помощью уравнений Юла-Уокера.
r должно быть матрицей размером (length(lags), size(x, 2)).