Корреляция количественно определяет силу линейной зависимости между двумя переменными. Когда нет корреляции между двумя переменными, нет склонности, чтобы значения переменных увеличивались или уменьшались совместно. Две переменные, которые являются некоррелированными, не обязательно являются независимыми, однако, потому что они могут иметь нелинейные отношения.
Можно использовать линейную корреляцию, чтобы выяснить, существует ли линейная связь между переменными, не принимая или подгоняя определенную модель к вашим данным. Две переменные, которые имеют маленькую или отсутствие линейной корреляции, могут иметь сильную нелинейную связь. Однако вычисление линейной корреляции перед подгонкой модели является полезным способом идентифицировать переменные, которые имеют простую связь. Другой способ исследовать, как переменные связаны, это сделать графики поля точек ваших данных.
Ковариация определяет количественную силу линейного соотношения между двумя переменными в единицах относительно их отклонений. Корреляции являются стандартизированными ковариациями, дающими безразмерную величину, которая измеряет степень линейной зависимости, отдельную от шкалы любой переменной.
Следующий MATLAB® функции вычисляют выборочные коэффициенты корреляции и ковариацию. Эти выборочные коэффициенты являются оценками истинных коэффициентов ковариации и корреляции населения, из которого получена выборка данных.
Используйте MATLAB cov
функция для вычисления выборочной ковариационной матрицы для матрицы данных (где каждый столбец представляет отдельную величину).
Выборочная ковариационная матрица имеет следующие свойства:
cov(X)
симметрично.
diag(cov(X))
является вектором отклонений для каждого столбца данных. Отклонения представляют собой меру распределения или дисперсии данных в соответствующем столбце. (The var
функция вычисляет отклонение.)
sqrt(diag(cov(X)))
является вектором стандартных отклонений. (The 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
Ковариационная матрица для этих данных имеет следующую форму:
Здесь, s2ij является выборочной ковариацией между столбцом i и столбцом j данных. Потому что count
матрица содержит три столбца, матрица ковариации - 3 на 3.
Примечание
В частном случае, когда вектор является аргументом cov
, функция возвращает отклонение.
Функция corrcoef
создает матрицу выборочных коэффициентов корреляции для матрицы данных (где каждый столбец представляет отдельную величину). Коэффициенты корреляции варьируются от-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
матрица.