corrcoef

Коэффициенты корреляции

Синтаксис

R = corrcoef(A)
R = corrcoef(A,B)
[R,P] = corrcoef(___)
[R,P,RL,RU] = corrcoef(___)
___ = corrcoef(___,Name,Value)

Описание

пример

R = corrcoef(A) возвращает матрицу коэффициентов корреляции для A, где столбцы A представляют случайные переменные, и строки представляют наблюдения.

пример

R = corrcoef(A,B) возвращает коэффициенты между двумя случайными переменными A и B.

пример

[R,P] = corrcoef(___) возвращает матрицу коэффициентов корреляции и матрицу p-значений для тестирования гипотезы, что нет никакого отношения между наблюдаемыми явлениями (нулевая гипотеза). Используйте этот синтаксис с любым из аргументов от предыдущих синтаксисов. Если недиагональный элемент P меньше, чем уровень значения (значением по умолчанию является 0.05), то соответствующая корреляция в R рассматривается значительной. Этот синтаксис недопустим, если R содержит комплексные элементы.

пример

[R,P,RL,RU] = corrcoef(___) включает матрицы, содержащие нижние и верхние границы для 95%-го доверительного интервала для каждого коэффициента. Этот синтаксис недопустим, если R содержит комплексные элементы.

пример

___ = corrcoef(___,Name,Value) возвращает любой из выходных аргументов от предыдущих синтаксисов с дополнительными опциями, заданными одним или несколькими аргументами пары Name,Value. Например, corrcoef(A,'Alpha',0.1) задает 90%-й доверительный интервал, и corrcoef(A,'Rows','complete') не использует все строки A, содержащего одно или несколько значений NaN.

Примеры

свернуть все

Вычислите коэффициенты корреляции для матрицы с двумя нормально распределенными, случайными столбцами и одним столбцом, который задан с точки зрения другого. Поскольку третий столбец A является кратным второму, эти две переменные непосредственно коррелируются, таким образом коэффициентом корреляции в (2,3) и записях (3,2) R является 1.

x = randn(6,1);
y = randn(6,1);
A = [x y 2*y+3];
R = corrcoef(A)
R = 3×3

    1.0000   -0.6237   -0.6237
   -0.6237    1.0000    1.0000
   -0.6237    1.0000    1.0000

Вычислите матрицу коэффициента корреляции между двумя нормально распределенными, случайными векторами 10 наблюдений каждый.

A = randn(10,1);
B = randn(10,1);
R = corrcoef(A,B)
R = 2×2

    1.0000    0.4518
    0.4518    1.0000

Вычислите коэффициенты корреляции и p-значения нормально распределенной, случайной матрицы с добавленным четвертым столбцом, равным сумме других трех столбцов. Поскольку последний столбец A является линейной комбинацией других, корреляция представлена между четвертой переменной и каждой из других трех переменных. Поэтому четвертая строка и четвертый столбец P содержат очень маленькие p-значения, идентифицируя их как значительные корреляции.

A = randn(50,3);       
A(:,4) = sum(A,2); 
[R,P] = corrcoef(A)
R = 4×4

    1.0000    0.1135    0.0879    0.7314
    0.1135    1.0000   -0.1451    0.5082
    0.0879   -0.1451    1.0000    0.5199
    0.7314    0.5082    0.5199    1.0000

P = 4×4

    1.0000    0.4325    0.5438    0.0000
    0.4325    1.0000    0.3146    0.0002
    0.5438    0.3146    1.0000    0.0001
    0.0000    0.0002    0.0001    1.0000

Создайте нормально распределенную, случайную матрицу, с добавленным четвертым столбцом, равным сумме других трех столбцов, и вычислите коэффициенты корреляции, p-значения и нижние и верхние границы на коэффициентах.

A = randn(50,3);       
A(:,4) = sum(A,2); 
[R,P,RL,RU] = corrcoef(A)
R = 4×4

    1.0000    0.1135    0.0879    0.7314
    0.1135    1.0000   -0.1451    0.5082
    0.0879   -0.1451    1.0000    0.5199
    0.7314    0.5082    0.5199    1.0000

P = 4×4

    1.0000    0.4325    0.5438    0.0000
    0.4325    1.0000    0.3146    0.0002
    0.5438    0.3146    1.0000    0.0001
    0.0000    0.0002    0.0001    1.0000

RL = 4×4

    1.0000   -0.1702   -0.1952    0.5688
   -0.1702    1.0000   -0.4070    0.2677
   -0.1952   -0.4070    1.0000    0.2825
    0.5688    0.2677    0.2825    1.0000

RU = 4×4

    1.0000    0.3799    0.3575    0.8389
    0.3799    1.0000    0.1388    0.6890
    0.3575    0.1388    1.0000    0.6974
    0.8389    0.6890    0.6974    1.0000

Матрицы RL и RU дают нижние и верхние границы, соответственно, на каждом коэффициенте корреляции согласно 95%-му доверительному интервалу по умолчанию. Можно изменить доверительный уровень путем определения значения Alpha, который задает уверенность процента, % 100*(1-Alpha). Например, используйте значение Alpha, равное 0,01, чтобы вычислить 99%-й доверительный интервал, который отражается в границах RL и RU. Интервалы, заданные содействующими границами в RL и RU, больше для 99%-й уверенности по сравнению с 95%, поскольку более высокая уверенность требует более содержащей области значений потенциальных значений корреляции.

[R,P,RL,RU] = corrcoef(A,'Alpha',0.01)
R = 4×4

    1.0000    0.1135    0.0879    0.7314
    0.1135    1.0000   -0.1451    0.5082
    0.0879   -0.1451    1.0000    0.5199
    0.7314    0.5082    0.5199    1.0000

P = 4×4

    1.0000    0.4325    0.5438    0.0000
    0.4325    1.0000    0.3146    0.0002
    0.5438    0.3146    1.0000    0.0001
    0.0000    0.0002    0.0001    1.0000

RL = 4×4

    1.0000   -0.2559   -0.2799    0.5049
   -0.2559    1.0000   -0.4792    0.1825
   -0.2799   -0.4792    1.0000    0.1979
    0.5049    0.1825    0.1979    1.0000

RU = 4×4

    1.0000    0.4540    0.4332    0.8636
    0.4540    1.0000    0.2256    0.7334
    0.4332    0.2256    1.0000    0.7407
    0.8636    0.7334    0.7407    1.0000

Создайте нормально распределенную матрицу, включающую стоимость NaN, и вычислите матрицу коэффициента корреляции, исключая любые строки, которые содержат NaN.

A = randn(5,3);
A(1,3) = NaN;
A(3,2) = NaN;
A
A = 5×3

    0.5377   -1.3077       NaN
    1.8339   -0.4336    3.0349
   -2.2588       NaN    0.7254
    0.8622    3.5784   -0.0631
    0.3188    2.7694    0.7147

R = corrcoef(A,'Rows','complete')
R = 3×3

    1.0000   -0.8506    0.8222
   -0.8506    1.0000   -0.9987
    0.8222   -0.9987    1.0000

Используйте 'all', чтобы включать все значения NaN в вычисление.

R = corrcoef(A,'Rows','all')
R = 3×3

     1   NaN   NaN
   NaN   NaN   NaN
   NaN   NaN   NaN

Используйте 'pairwise', чтобы вычислить каждый коэффициент корреляции двух-столбца на попарной основе. Если один из этих двух столбцов содержит NaN, та строка не использована.

R = corrcoef(A,'Rows','pairwise')
R = 3×3

    1.0000   -0.3388    0.4649
   -0.3388    1.0000   -0.9987
    0.4649   -0.9987    1.0000

Входные параметры

свернуть все

Входной массив, заданный как матрица.

  • Если A является скаляром, corrcoef(A) возвращает NaN.

  • Если A является вектором, corrcoef(A) возвращает 1.

Типы данных: single | double
Поддержка комплексного числа: Да

Дополнительный входной массив, заданный как вектор, матрица или многомерный массив.

  • A и B должны быть одного размера.

  • Если A и B являются скалярами, то corrcoef(A,B) возвращает 1. Если A и B равны, однако, corrcoef(A,B) возвращает NaN.

  • Если A и B являются матрицами или многомерными массивами, то corrcoef(A,B) преобразовывает каждый входной параметр в свое векторное представление и эквивалентен corrcoef(A(:),B(:)) или corrcoef([A(:) B(:)]).

  • Если A и B являются пустыми массивами 0 на 0, corrcoef(A,B) возвращает матрицу 2 на 2 значений NaN.

Типы данных: single | double
Поддержка комплексного числа: Да

Аргументы в виде пар имя-значение

Укажите необязательные аргументы в виде пар ""имя, значение"", разделенных запятыми. Имя (Name) — это имя аргумента, а значение (Value) — соответствующее значение. Имя должно появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

Пример: R = corrcoef (A, 'Альфа', 0.03)

Уровень значения, заданный как номер между 0 и 1. Значение параметра 'Alpha' задает доверительный уровень процента, 100* (1-Alpha) %, для коэффициентов корреляции, который определяет границы в RL и RU.

Типы данных: single | double

Использование опции NaN, заданной как одно из этих значений:

  • все Включайте все значения NaN во входной параметр прежде, чем вычислить коэффициенты корреляции.

  • завершенный Не используйте любые строки входного параметра, содержащего значения NaN прежде, чем вычислить коэффициенты корреляции. Эта опция всегда возвращает положительную полуопределенную матрицу.

  • 'pairwise' — Не используйте любые строки, содержащие NaN только на попарной основе для каждого вычисления коэффициента корреляции двух-столбца. Эта опция может возвратить матрицу, которая не является положительна полуопределенный.

Типы данных: char

Выходные аргументы

свернуть все

Коэффициенты корреляции, возвращенные как матрица.

  • Для одного матричного входного параметра R имеет размер [size(A,2) size(A,2)] на основе количества случайных переменных (столбцы), представленные A. Диагональные элементы установлены в один условно, в то время как недиагональные записи являются коэффициентами корреляции переменных пар. Значения коэффициентов могут колебаться от-1 до 1, с-1 представлением прямой, отрицательной корреляции, 0 представлениями никакой корреляции и 1 представлением прямой, положительной корреляции. R симметричен.

  • Для двух входных параметров R является матрицей 2 на 2 с единицами по диагонали и коэффициентами корреляции вдоль недиагонального.

  • Если какая-либо случайная переменная является постоянной, ее корреляция со всеми другими переменными не определена, и соответствующим значением строки и столбца является NaN.

P-значения, возвращенные как матрица. P симметричен и одного размера как R. Диагональные элементы являются всеми единицами, и недиагональные записи являются p-значениями для каждой переменной пары. P-значения колеблются от 0 до 1, где значения близко к 0 соответствуют значительной корреляции в R и низкой вероятности наблюдения нулевой гипотезы.

Нижняя граница для коэффициента корреляции, возвращенного как матрица. RL симметричен и одного размера как R. Диагональные элементы являются всеми единицами, и недиагональные записи являются 95%-й нижней границей доверительного интервала для соответствующего коэффициента в R. Синтаксис, возвращающий RL, недопустим, если R содержит комплексные значения.

Верхняя граница для коэффициента корреляции, возвращенного как матрица. RU симметричен и одного размера как R. Диагональные элементы являются всеми единицами, и недиагональные записи являются 95%-й верхней границей доверительного интервала для соответствующего коэффициента в R. Синтаксис, возвращающий RL, недопустим, если R содержит комплексные значения.

Больше о

свернуть все

Коэффициент корреляции

Коэффициент корреляции двух случайных переменных является мерой их линейной зависимости. Если каждая переменная имеет скалярные наблюдения N, то Коэффициент корреляции пирсона задан как

ρ (A, B) =1N−1∑i=1N (Ai−μA¯σA)(Bi−μBσB),

где μA и σA являются средним и стандартным отклонением A, соответственно, и μB и σB являются средним и стандартным отклонением B. Также можно задать коэффициент корреляции с точки зрения ковариации A и B:

ρ (A, B) =cov (A, B) σAσB.

Матрица коэффициента корреляции двух случайных переменных является матрицей коэффициентов корреляции для каждой попарной переменной комбинации,

R = (A, A) ρ (A, B) ρ (B, A) ρ (B, B)).

Поскольку A и B всегда непосредственно коррелируются себе, диагональные элементы равняются всего 1, то есть,

R = ((A, B) ρ (B, A) 1).

Ссылки

[1] Фишер, статистические методы R.A. для научных работников, 13-го Эда., Hafner, 1958.

[2] Кендалл, M.G. усовершенствованная теория статистики, 4-го Эда., Макмиллан, 1979.

[3] Нажмите, W.H., Teukolsky, S.A., Vetterling, W.T. и Flannery, B.P. числовые рецепты в C, 2-м Эде., издательство Кембриджского университета, 1992.

Расширенные возможности

Смотрите также

| | |

Представлено до R2006a

Была ли эта тема полезной?