Корреляция определяет количественную связь линейного соотношения между двумя переменными. В случае, когда нет корреляции между двумя переменными - отсутствует склонность считать, что значений переменных увеличиваются или уменьшаются совместно. Две переменные, которые являются некоррелироваными, не обязательно являются независимыми, однако, это может быть из-за нелинейных взаимоотношений.
Можно использовать линейную корреляцию, чтобы заняться расследованиями, существует ли линейное соотношение между переменными, не имея необходимость принимать или соответствовать определенной модели к данным. Две переменные, которые имеют маленькое или никакую линейную корреляцию, могут иметь сильное нелинейное отношение. Однако вычисление линейной корреляции прежде, чем подобрать модель является полезным способом идентифицировать переменные, которые имеют простое отношение. Другой способ исследовать, как переменные связаны, состоит в том, чтобы сделать графики рассеивания ваших данных.
Ковариация определяет количественную связь линейного соотношения между двумя переменными в модулях относительно их отклонений. Корреляции являются стандартизированными ковариациями, давая безразмерное количество, которое измеряет степень линейного соотношения, отдельного от шкалы любой переменной.
Следующие функции MATLAB® вычисляют выборочные коэффициенты корреляции и ковариацию. Эти выборочные коэффициенты являются оценками истинных коэффициентов ковариации и корреляции для совокупности, из которой получена выборка данных.
Используйте функцию cov
MATLAB, чтобы вычислить матрицу выборочной ковариации для матрицы данных (где каждый столбец представляет отдельное количество).
Матрица выборочной ковариации имеет следующие свойства:
cov(X)
симметричен.
diag(cov(X))
является вектором отклонений для каждого столбца данных. Отклонения представляют меру распространения или дисперсию данных в соответствующем столбце. (Функция var
вычисляет отклонение.)
sqrt(diag(cov(X)))
является вектором стандартных отклонений. (Функция std
вычисляет стандартное отклонение.)
Недиагональные элементы ковариационной матрицы представляют ковариации между отдельными столбцами данных.
Здесь, X
может быть вектором или матрицей. Для матрицы m на n ковариационная матрица n на n.
Для примера вычисления ковариации загрузите выборочные данные в count.dat
, который содержит матрицу 24х3:
load count.dat
Вычислите ковариационную матрицу для этих данных:
cov(count)
MATLAB отвечает следующим результатом:
ans = 1.0e+003 * 0.6437 0.9802 1.6567 0.9802 1.7144 2.6908 1.6567 2.6908 4.6278
Ковариационная матрица для этих данных имеет следующую форму:
Здесь, s 2ij является выборочной ковариацией между столбцом i и столбцом j данных. Поскольку матрица count
содержит три столбца, ковариационная матрица имеет размер 3х3.
В особом случае, когда вектор является аргументом cov
, функция возвращает дисперсию.
corrcoef
функции MATLAB производит матрицу выборочных коэффициентов корреляции для матрицы данных (где каждый столбец представляет отдельное количество). Коэффициенты корреляции колеблются от-1 до 1, где
Значения близко к 1 указывают, что существует положительное линейное соотношение между столбцами данных.
Значения близко к-1 указывают, что один столбец данных имеет отрицательное линейное соотношение к другому столбцу данных (антикорреляция).
Значения близко к или равный 0 предполагают, что между столбцами данных нет никакого линейного соотношения.
Для матрицы m на n матрица коэффициента корреляции n на n. Расположение элементов в матрице коэффициента корреляции соответствует местоположению элементов в ковариационной матрице, как описано в Ковариации.
Для примера вычисления коэффициентов корреляции загрузите выборочные данные в count.dat
, который содержит матрицу 24х3:
load count.dat
Введите следующий синтаксис, чтобы вычислить коэффициенты корреляции:
corrcoef(count)
Это приводит к следующей 3х3 матрице коэффициентов корреляции:
ans = 1.0000 0.9331 0.9599 0.9331 1.0000 0.9553 0.9599 0.9553 1.0000
Поскольку все коэффициенты корреляции близко к 1, существует сильная положительная корреляция между каждой парой столбцов данных в матрице count
.