Линейная или ранговая корреляция
[ указывает параметры, использующие один или несколько аргументов пары имя-значение в дополнение к входным аргументам в предыдущих синтаксисах. Например, rho,pval] = corr(___,Name,Value)'Type','Kendall' задает вычисление коэффициента тау-корреляции Кендалла.
Найдите корреляцию между двумя матрицами и сравните ее с корреляцией между двумя векторами столбцов.
Создать образец данных.
rng('default')
X = randn(30,4);
Y = randn(30,4);Ввести корреляцию между двумя столбцами матрицы X и четвертый столбец матрицы Y.
Y(:,4) = Y(:,4)+X(:,2);
Вычислить корреляцию между столбцами X и Y.
[rho,pval] = corr(X,Y)
rho = 4×4
-0.1686 -0.0363 0.2278 0.3245
0.3022 0.0332 -0.0866 0.7653
-0.3632 -0.0987 -0.0200 -0.3693
-0.1365 -0.1804 0.0853 0.0279
pval = 4×4
0.3731 0.8489 0.2260 0.0802
0.1045 0.8619 0.6491 0.0000
0.0485 0.6039 0.9166 0.0446
0.4721 0.3400 0.6539 0.8837
Как и ожидалось, коэффициент корреляции между двумя столбцами X и колонку четвертую из Y, rho(2,4), является самым высоким и представляет высокую положительную корреляцию между двумя столбцами. Соответствующее значение p, pval(2,4), равно нулю до четырех показанных цифр. Поскольку значение p меньше уровня значимости 0.05, это указывает на отклонение гипотезы об отсутствии корреляции между двумя столбцами.
Вычислить корреляцию между X и Y использование corrcoef.
[r,p] = corrcoef(X,Y)
r = 2×2
1.0000 -0.0329
-0.0329 1.0000
p = 2×2
1.0000 0.7213
0.7213 1.0000
Функция MATLAB ® corrcoef, в отличие от corr функция, преобразует входные матрицы X и Y в векторы столбцов, X(:) и Y(:)перед вычислением корреляции между ними. Поэтому введение корреляции между вторым столбцом матрицы X и четвертый столбец матрицы Y больше не существует, поскольку эти два столбца находятся в разных секциях преобразованных векторов столбцов.
Значение внедиагональных элементов r, который представляет коэффициент корреляции между X и Y, низко. Это значение указывает на незначительную или нулевую корреляцию между X и Y. Аналогично, значение внедиагональных элементов p, которое представляет значение p, намного выше, чем уровень значимости 0.05. Это значение указывает на то, что недостаточно доказательств для отклонения гипотезы об отсутствии корреляции между X и Y.
Проверьте альтернативные гипотезы для положительной, отрицательной и ненулевой корреляции между столбцами двух матриц. Сравните значения коэффициента корреляции и значения p в каждом случае.
Создать образец данных.
rng('default')
X = randn(50,4);
Y = randn(50,4);Ввести положительную корреляцию между столбцом 1 матрицы X и четвертый столбец матрицы Y.
Y(:,4) = Y(:,4)+0.7*X(:,1);
Ввести отрицательную корреляцию между вторым столбцом из X и второй столбец из Y.
Y(:,2) = Y(:,2)-2*X(:,2);
Проверьте альтернативную гипотезу о том, что корреляция больше нуля.
[rho,pval] = corr(X,Y,'Tail','right')
rho = 4×4
0.0627 -0.1438 -0.0035 0.7060
-0.1197 -0.8600 -0.0440 0.1984
-0.1119 0.2210 -0.3433 0.1070
-0.3526 -0.2224 0.1023 0.0374
pval = 4×4
0.3327 0.8405 0.5097 0.0000
0.7962 1.0000 0.6192 0.0836
0.7803 0.0615 0.9927 0.2298
0.9940 0.9397 0.2398 0.3982
Как и ожидалось, коэффициент корреляции между столбцами один из X и колонку четвертую из Y, rho(1,4), имеет наибольшее положительное значение, представляющее высокую положительную корреляцию между двумя столбцами. Соответствующее значение p, pval(1,4), равно нулю до четырех показанных цифр, что ниже уровня значимости 0.05. Эти результаты указывают на отклонение нулевой гипотезы об отсутствии корреляции между двумя столбцами и приводят к выводу, что корреляция больше нуля.
Проверьте альтернативную гипотезу, что корреляция меньше нуля.
[rho,pval] = corr(X,Y,'Tail','left')
rho = 4×4
0.0627 -0.1438 -0.0035 0.7060
-0.1197 -0.8600 -0.0440 0.1984
-0.1119 0.2210 -0.3433 0.1070
-0.3526 -0.2224 0.1023 0.0374
pval = 4×4
0.6673 0.1595 0.4903 1.0000
0.2038 0.0000 0.3808 0.9164
0.2197 0.9385 0.0073 0.7702
0.0060 0.0603 0.7602 0.6018
Как и ожидалось, коэффициент корреляции между двумя столбцами X и второй столбец из Y, rho(2,2), имеет отрицательное число с наибольшим абсолютным значением (-0.86), представляющий высокую отрицательную корреляцию между двумя столбцами. Соответствующее значение p, pval(2,2), равно нулю до четырех показанных цифр, что ниже уровня значимости 0.05. Опять же, эти результаты указывают на отказ от нулевой гипотезы и приводят к выводу, что корреляция меньше нуля.
Проверьте альтернативную гипотезу о том, что корреляция не равна нулю.
[rho,pval] = corr(X,Y)
rho = 4×4
0.0627 -0.1438 -0.0035 0.7060
-0.1197 -0.8600 -0.0440 0.1984
-0.1119 0.2210 -0.3433 0.1070
-0.3526 -0.2224 0.1023 0.0374
pval = 4×4
0.6654 0.3190 0.9807 0.0000
0.4075 0.0000 0.7615 0.1673
0.4393 0.1231 0.0147 0.4595
0.0120 0.1206 0.4797 0.7964
P-значения, pval(1,4) и pval(2,2), оба равны нулю до четырех цифр, показанных на рисунке. Поскольку p-значения ниже уровня значимости 0.05, коэффициенты корреляции rho(1,4) и rho(2,2) значительно отличаются от нуля. Поэтому нулевая гипотеза отвергается; корреляция не равна нулю.
X - Входная матрицаВходная матрица, заданная как матрица n-by-k. Строки X соответствуют наблюдениям, а столбцы - переменным.
Пример: X = randn(10,5)
Типы данных: single | double
Y - Входная матрицаВходная матрица, заданная как матрица n-by-k2, когда X задается как матрица n-by-k1. Строки Y соответствуют наблюдениям, а столбцы - переменным.
Пример: Y = randn(20,7)
Типы данных: single | double
Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.
corr(X,Y,'Type','Kendall','Rows','complete') возвращает тау-коэффициент корреляции Кендалла, используя только строки, не содержащие отсутствующих значений.'Type' - Тип корреляции'Pearson' (по умолчанию) | 'Kendall' | 'Spearman'Тип корреляции, определяемый как разделенная запятыми пара, состоящая из 'Type' и одно из этих значений.
| Стоимость | Описание |
|---|---|
'Pearson' | Коэффициент линейной корреляции Пирсона |
'Kendall' | Коэффициент Тау Кендалла |
'Spearman' | Ро Спирмена |
corr вычисляет p-значения для корреляции Пирсона, используя t-распределение Стьюдента для преобразования корреляции. Эта корреляция является точной, когда X и Y происходит из обычного распределения. corr вычисляет p-значения для тау Кендалла и ро Спирмена, используя либо точные распределения перестановок (для малых размеров выборки), либо приближения больших выборок.
Пример: 'Type','Spearman'
'Rows' - Строки для использования в вычислениях'all' (по умолчанию) | 'complete' | 'pairwise'Строки для использования в вычислениях, указанные как разделенная запятыми пара, состоящая из 'Rows' и одно из этих значений.
| Стоимость | Описание |
|---|---|
'all' | Использовать все строки ввода независимо от отсутствующих значений (NaNs). |
'complete' | Используйте только строки входных данных без отсутствующих значений. |
'pairwise' | Вычислить rho(i,j) использование строк без пропущенных значений в столбце i или j. |
'complete' значение, в отличие от 'pairwise' значение, всегда дает положительный определенный или положительный полуопределенный rho. Также, 'complete' значение, как правило, использует меньшее количество наблюдений для оценки rho при строках ввода (X или Y) содержат отсутствующие значения.
Пример: 'Rows','pairwise'
'Tail' - Альтернативная гипотеза'both' (по умолчанию) | 'right' | 'left'Альтернативная гипотеза, указанная как пара, разделенная запятыми, состоящая из 'Tail' и одно из значений в таблице. 'Tail' определяет альтернативную гипотезу, по которой вычисляются p-значения для проверки гипотезы отсутствия корреляции.
| Стоимость | Описание |
|---|---|
'both' | Проверить альтернативную гипотезу, что корреляция не 0. |
'right' | Проверьте альтернативную гипотезу о том, что корреляция больше 0 |
'left' | Проверить альтернативную гипотезу о том, что корреляция меньше 0. |
corr вычисляет p-значения для двухстороннего теста путем удвоения более значительного из двух однохвостых p-значений.
Пример: 'Tail','left'
rho - Парный коэффициент линейной корреляцииПарный коэффициент линейной корреляции, возвращаемый в виде матрицы.
Если вводится только матрица X, rho - симметричная матрица k-by-k, где k - количество столбцов в X. Вход rho(a,b) - парный коэффициент линейной корреляции между столбцом a и столбцом b в X.
При вводе матриц X и Y, rho является матрицей k1-by-k2, где k1 и k2 - количество столбцов в X и Yсоответственно. Вход rho(a,b) - парный коэффициент линейной корреляции между столбцами a в X и столбец b в Y.
pval - p-значенияp-значения, возвращаемые в виде матрицы. Каждый элемент pval является значением p для соответствующего элемента rho.
Если pval(a,b) мал (менее 0.05), затем корреляция rho(a,b) значительно отличается от нуля.
Коэффициент линейной корреляции Пирсона является наиболее часто используемым коэффициентом линейной корреляции. Для столбца Xa в матрице X и столбца Yb в матрице Y, имеющего значения /n j )/n, коэффициент линейной корреляции Пирсона ro (a, b) определяется как:
∑j=1n (Yb, j − Y betb) 2} 1/2,
где n - длина каждого столбца.
Значения коэффициента корреляции могут быть в диапазоне от –1 кому +1. Значение –1 указывает на совершенную отрицательную корреляцию, в то время как значение +1 указывает на совершенную положительную корреляцию. Значение 0 указывает на отсутствие корреляции между столбцами.
Тау Кендалла основан на подсчете числа (i, j) пар, для i < j, которые согласуются - то есть для i − Yb, i − Yb, j имеют один и тот же знак. Уравнение для тау Кендалла включает корректировку для связей в нормирующей константе и часто называется тау-b.
Для столбца Xa в матрице X и столбца Yb в матрице Y тау-коэффициент Кендалла определяется как:
− 1),
где , Yb , j) и
) = 0 − 1иф (Xa, i − x
Значения коэффициента корреляции могут быть в диапазоне от –1 кому +1. Значение –1 указывает, что ранжирование одного столбца является обратным по отношению к другому, в то время как значение +1 указывает, что два рейтинга одинаковы. Значение 0 указывает на отсутствие связи между столбцами.
Rho Спирмана эквивалентен коэффициенту линейной корреляции Пирсона, применяемому к ранжированию столбцов Xa и Yb.
Если все ранги в каждом столбце различны, уравнение упрощается до:
− 1),
где d - разница между рангами двух столбцов, а n - длина каждого столбца.
Разница между corr(X,Y) и функция MATLAB ®corrcoef(X,Y) является ли это corrcoef(X,Y) возвращает матрицу коэффициентов корреляции для двух векторов столбцов X и Y. Если X и Y не являются векторами столбцов, corrcoef(X,Y) преобразует их в векторы столбцов.
[1] Гиббонс, Джей Ди. Непараметрический статистический вывод. 2-й ред. М. Деккер, 1985.
[2] Холландер, М. и Д. А. Вулф. Непараметрические статистические методы. Уайли, 1973.
[3] Методы корреляции рангов Кендалла, М.Г. Гриффин, 1970.
[4] Лучший, Ди Джей и Ди Э. Робертс. «Алгоритм AS 89: Вероятности верхнего хвоста ро Спирмена». Прикладная статистика, 24: 377-379.
Эта функция поддерживает массивы tall для данных из памяти с ограничением:
Только 'Pearson' поддерживается тип.
Дополнительные сведения см. в разделе Tall Arrays for Out-of-Memory Data.
Эта функция полностью поддерживает массивы графических процессоров. Дополнительные сведения см. в разделе Запуск функций MATLAB на графическом процессоре (панель инструментов параллельных вычислений).
corrcoef | corrcov | partialcorr | tiedrank
Имеется измененная версия этого примера. Открыть этот пример с помощью изменений?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.