Линейная или ранговая корреляция
[ задает опции, использующие один или несколько аргументы пары "имя-значение" в дополнение к входным параметрам в предыдущих синтаксисах. Для примера, rho,pval] = corr(___,Name,Value)'Type','Kendall' задает вычисление коэффициента тау-корреляции Кендалла.
Найдите корреляцию между двумя матрицами и сравните ее с корреляцией между два векторов-столбцов.
Сгенерируйте выборочные данные.
rng('default')
X = randn(30,4);
Y = randn(30,4);Введите корреляцию между столбцом 2 матрицы 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
Как ожидалось, коэффициент корреляции между столбцом 2 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 function, преобразует входные матрицы X и Y в векторы-столбцы, X(:) и Y(:), перед вычислением корреляции между ними. Поэтому введение корреляции между столбцом 2 матрицы X и столбец четвертый матричных Y больше не существует, поскольку эти два столбца находятся в разных разделах преобразованных векторов-столбцов.
Значение недиагональных элементов r, который представляет коэффициент корреляции между X и Y, низкая. Это значение почти не указывает на корреляцию между X и Y. Точно так же значение off-диагональных элементов p, который представляет значение p, намного выше уровня значимости 0.05. Это значение указывает, что недостаточно доказательств, чтобы отклонить гипотезу об отсутствии корреляции между X и Y.
Проверьте альтернативные гипотезы на положительную, отрицательную и ненулевую корреляцию между столбцами двух матриц. Сравните значения коэффициента корреляции и p-значения в каждом случае.
Сгенерируйте выборочные данные.
rng('default')
X = randn(50,4);
Y = randn(50,4);Введите положительную корреляцию между столбцом один из матричных X и столбец четвертый матрицы Y.
Y(:,4) = Y(:,4)+0.7*X(:,1);
Введите отрицательную корреляцию между столбцом 2 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
Как ожидалось, коэффициент корреляции между столбцом 2 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 k 2 матрица при X задается как n -by- k 1 матрица. Строки Y соответствуют наблюдениям, а столбцы соответствуют переменным.
Пример: Y = randn(20,7)
Типы данных: single | double
Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.
corr(X,Y,'Type','Kendall','Rows','complete') возвращает коэффициент tau корреляции Кендалла, используя только те строки, которые не содержат отсутствующих значений.'Type' - Тип корреляции'Pearson' (по умолчанию) | 'Kendall' | 'Spearman'Тип корреляции, заданный как разделенная разделенными запятой парами, состоящая из 'Type' и одно из этих значений.
| Значение | Описание |
|---|---|
'Pearson' | Коэффициент линейной корреляции Пирсона |
'Kendall' | Коэффициент Тау Кендалла |
'Spearman' | Ро Спирмана |
corr вычисляет p -значения для корреляции Пирсона, используя распределение t Стьюдента для преобразования корреляции. Эта корреляция точна, когда X и Y происходит из нормального распределения. corr вычисляет p -значения для тау Кендалла и ро Спирмана, используя либо точные распределения сочетаний (для небольших размеров выборки), либо приближения с большой выборкой.
Пример: 'Type','Spearman'
'Rows' - Строки для использования в расчетах'all' (по умолчанию) | 'complete' | 'pairwise'Строки для использования в расчетах, заданные как разделенная разделенными запятой парами, состоящая из 'Rows' и одно из этих значений.
| Значение | Описание |
|---|---|
'all' | Используйте все строки входов независимо от отсутствующих значений (NaNс). |
'complete' | Используйте только строки входов без отсутствующих значений. |
'pairwise' | Вычислите rho(i,j) использование строк без отсутствующих значений в столбце i или j. |
The '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 является k матрицей 1-by- k 2, где k 1 и k 2 - количество столбцов в 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, со средствами и , коэффициент линейной корреляции Пирсона rho(a,b) определяется как:
где n - длина каждого столбца.
Значения коэффициента корреляции могут варьироваться от –1 на +1. Значение –1 указывает на совершенную отрицательную корреляцию, в то время как значение +1 указывает на совершенную положительную корреляцию. Значение 0 указывает на отсутствие корреляции между столбцами.
Тау Кендалла основан на подсчёте количества (i,j) пар, для i<j, которые являются конкордантными - то есть для которых и иметь тот же знак. Уравнение для тау Кендалла включает регулировку для связей в нормализующей константе и часто упоминается как тау-b.
Для Xa столбца в матрице X и Yb столбца в матрице Y, коэффициент тау Кендалла определяется как:
где и
Значения коэффициента корреляции могут варьироваться от –1 на +1. Значение –1 указывает, что один рейтинг столбца является обратным другому, в то время как значение +1 указывает, что два рейтинга совпадают. Значение 0 указывает на отсутствие связи между столбцами.
Ро Спирмана эквивалентно Линейному Коэффициенту Корреляции Пирсона, применяемому к рейтингам столбцов Xa и Yb.
Если все ранги в каждом столбце различны, уравнение упрощает:
где 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] Кендалл, M.G. Ранг Методы Корреляции. Гриффин, 1970.
[4] Best, D.J., and D.E. Roberts. Алгоритм AS 89: Вероятности верхнего хвоста ро Спирмана. Прикладная статистика, 24: 377-379.
Эта функция поддерживает длинные массивы для данной , которой не помещаютси в память, с ограничением:
Только 'Pearson' поддерживается тип.
Для получения дополнительной информации см. Раздел «Длинные массивы для данных , которых не помещаютсь в память,».
Эта функция полностью поддерживает массивы GPU. Для получения дополнительной информации смотрите Запуск функций MATLAB на графическом процессоре (Parallel Computing Toolbox).
corrcoef | corrcov | partialcorr | tiedrank
У вас есть измененная версия этого примера. Вы хотите открыть этот пример с вашими правками?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.