Линейная или ранговая корреляция
[
задает опции, использующие один или несколько аргументы пары "имя-значение" в дополнение к входным параметрам в предыдущих синтаксисах. Для примера, 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. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.