corrcoef

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

Описание

пример

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

пример

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

пример

[R,P] = corrcoef(___) возвращает матрицу коэффициентов корреляции и матрицу p-значений для проверки гипотезы об отсутствии связи между наблюдаемыми явлениями (нулевая гипотеза). Используйте этот синтаксис с любым из аргументов из предыдущих синтаксисов. Если off-диагональный элемент 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 задайте нижнюю и верхнюю границы, соответственно, для каждого коэффициента корреляции согласно доверия интервалу по умолчанию. Можно изменить уровень доверия, задав значение Alpha, который определяет процент доверия, 100*(1-Alpha)%. Для примера используйте Alpha значение, равное 0,01 для вычисления доверительного интервала на 99%, что отражается в границах RL и RU. Интервалы, заданные границами коэффициентов в RL и RU больше для доверия по сравнению с 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 аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: R = corrcoef(A,'Alpha',0.03)

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

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

Использование NaN опция, заданная как одно из следующих значений:

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

  • 'complete' - Опускать все строки входного сигнала, содержащего 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)=1N1i=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=(1ρ(A,B)ρ(B,A)1).

Ссылки

[1] Fisher, R.A. Statistical Methods for Research Workers, 13 Ed., Hafner, 1958.

[2] Kendall, M.G. The Advanced Theory of Statistics, 4 Ed., Macmillan, 1979.

[3] Press, W.H., Teukolsky, S.A., Vetterling, W.T., and Flannery, B.P. Numerical Recipes in C, 2nd Ed., Cambridge University Press, 1992.

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

.

См. также

| | |

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