exponenta event banner

partialcorri

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

Описание

пример

rho = partialcorri(y,x) возвращает выборочные коэффициенты линейной частичной корреляции между парами переменных в y и x, с поправкой на остальные переменные в x.

пример

rho = partialcorri(y,x,z) возвращает выборочные коэффициенты линейной частичной корреляции между парами переменных в y и x, с поправкой на остальные переменные в x, после первого контроля обоих x и y для переменных в z.

пример

rho = partialcorri(___,Name,Value) возвращает выборочные коэффициенты линейной частичной корреляции с дополнительными опциями, заданными одним или несколькими аргументами пары имя-значение, используя входные аргументы из любого из предыдущих синтаксисов. Например, можно указать, следует ли использовать частичные корреляции Пирсона или Спирмена, или указать способ обработки отсутствующих значений.

пример

[rho,pval] = partialcorri(___) также возвращает матрицу pval p-значений для проверки гипотезы отсутствия частичной корреляции с односторонней или двусторонней альтернативой, что существует ненулевая частичная корреляция.

Примеры

свернуть все

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

Загрузите образцы данных.

load carsmall;

Данные содержат измерения от автомобилей, произведенных в 1970, 1976 и 1982 годах. Он включает в себя MPG и Acceleration в качестве показателей эффективности, и Displacement, Horsepower, и Weight в качестве конструктивных переменных. Acceleration время, необходимое для ускорения от 0 до 60 миль в час, поэтому высокое значение для Acceleration соответствует транспортному средству с низким ускорением.

Определите входные матрицы. y матрица включает в себя показатели эффективности и x матрица включает конструктивные переменные.

y = [MPG,Acceleration];
x = [Displacement,Horsepower,Weight];

Вычислите коэффициенты корреляции. Включить в расчет только строки без отсутствующих значений.

rho = partialcorri(y,x,'Rows','complete')
rho = 2×3

   -0.0537   -0.1520   -0.4856
   -0.3994   -0.4008    0.4912

Результаты показывают, например, корреляцию 0,4912 между весом и ускорением после контроля эффектов смещения и лошадиных сил. Можно вернуть значения p в качестве второго вывода и изучить их, чтобы подтвердить, являются ли эти корреляции статистически значимыми.

Для более четкого отображения создайте таблицу с соответствующими метками переменных и строк.

rho = array2table(rho, ...
   'VariableNames',{'Displacement','Horsepower','Weight'}, ...
   'RowNames',{'MPG','Acceleration'});

disp('Partial Correlation Coefficients')
Partial Correlation Coefficients
disp(rho)
                    Displacement    Horsepower     Weight 
                    ____________    __________    ________

    MPG              -0.053684       -0.15199     -0.48563
    Acceleration      -0.39941       -0.40075      0.49123

Тест на частичную корреляцию между парами переменных в x и y входные матрицы, контролируя при этом эффекты остальных переменных в x плюс дополнительные переменные в матрице z.

Загрузите образцы данных.

load carsmall;

Данные содержат измерения от автомобилей, произведенных в 1970, 1976 и 1982 годах. Он включает в себя MPG и Acceleration в качестве показателей эффективности, и Displacement, Horsepower, и Weight в качестве конструктивных переменных. Acceleration время, необходимое для ускорения от 0 до 60 миль в час, поэтому высокое значение для Acceleration соответствует транспортному средству с низким ускорением.

Создание новой переменной Headwindи случайным образом генерируют данные для представления понятия среднего встречного ветра вдоль маршрута измерения производительности.

rng('default');  % For reproducibility
Headwind = (10:-0.2:-9.8)' + 5*randn(100,1);

Так как встречный ветер может влиять на показатели производительности, контроль его воздействия при тестировании на частичную корреляцию между остальными переменными.

Определите входные матрицы. y матрица включает в себя показатели эффективности и x матрица включает конструктивные переменные. z матрица содержит дополнительные переменные для управления при вычислении частичных корреляций, такие как встречный ветер.

y = [MPG,Acceleration];
x = [Displacement,Horsepower,Weight];
z = Headwind;

Вычислите коэффициенты частичной корреляции. Включить в расчет только строки без отсутствующих значений.

[rho,pval] = partialcorri(y,x,z,'Rows','complete')
rho = 2×3

    0.0572   -0.1055   -0.5736
   -0.3845   -0.3966    0.4674

pval = 2×3

    0.5923    0.3221    0.0000
    0.0002    0.0001    0.0000

Небольшое возвращаемое значение p 0,001 в pval указывает, например, значительную отрицательную корреляцию между лошадиной силой и ускорением после контроля смещения, веса и встречного ветра.

Для более четкого отображения создайте таблицы с соответствующими метками переменных и строк.

rho = array2table(rho, ...
   'VariableNames',{'Displacement','Horsepower','Weight'}, ...
   'RowNames',{'MPG','Acceleration'});
 
pval = array2table(pval, ...
   'VariableNames',{'Displacement','Horsepower','Weight'}, ...
   'RowNames',{'MPG','Acceleration'});

disp('Partial Correlation Coefficients, Accounting for Headwind')
Partial Correlation Coefficients, Accounting for Headwind
disp(rho)
                    Displacement    Horsepower     Weight 
                    ____________    __________    ________

    MPG               0.057197       -0.10555     -0.57358
    Acceleration      -0.38452       -0.39658       0.4674
disp('p-values, Accounting for Headwind')
p-values, Accounting for Headwind
disp(pval)
                    Displacement    Horsepower      Weight  
                    ____________    __________    __________

    MPG                 0.59233        0.32212    3.4401e-09
    Acceleration     0.00018272     0.00010902    3.4091e-06

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

свернуть все

Матрица данных, заданная как матрица n-px. Строки x соответствуют наблюдениям, а столбцы - переменным.

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

Матрица данных, заданная как матрица n-py. Строки y соответствуют наблюдениям, а столбцы - переменным.

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

Матрица данных, заданная как матрица n-by-pz. Строки z соответствуют наблюдениям, а столбцы - переменным.

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

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

Укажите дополнительные пары, разделенные запятыми Name,Value аргументы. Name является именем аргумента и Value - соответствующее значение. Name должен отображаться внутри кавычек. Можно указать несколько аргументов пары имен и значений в любом порядке как Name1,Value1,...,NameN,ValueN.

Пример: 'Type','Spearman','Rows','complete' вычисляет частичные корреляции Spearman, используя только данные в строках, которые не содержат отсутствующих значений.

Тип вычисляемых частичных корреляций, определяемый как разделенная запятыми пара, состоящая из 'Type' и либо 'Pearson' или 'Spearman'. Pearson вычисляет частичные корреляции Пирсона (линейные). Spearman вычисляет частичные корреляции Спирмана (ранга).

Пример: 'Type','Spearman'

Строки для использования в вычислениях, указанные как разделенная запятыми пара, состоящая из 'Rows' и одно из следующих.

'all'Использовать все строки независимо от отсутствующих (NaN) значения.
'complete'Используйте только строки без отсутствующих значений.
'pairwise'Использовать все доступные значения в каждом столбце y при вычислении коэффициентов частичной корреляции и значений p, соответствующих этому столбцу. Для каждого столбца y, строки будут удалены, соответствующие отсутствующим значениям в x (и/или z, если поставляется). Однако остальные строки с допустимыми значениями в этом столбце y используются, даже если отсутствуют значения в других столбцах y.

Пример: 'Rows','complete'

Альтернативная гипотеза для проверки против, указанная как пара, разделенная запятыми, состоящая из 'Tail' и одно из следующих.

'both'Проверьте альтернативную гипотезу о том, что корреляция не равна нулю.
'right'Проверьте альтернативную гипотезу о том, что корреляция больше 0.
'left'Проверьте альтернативную гипотезу, что корреляция меньше 0.

Пример: 'Tail','right'

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

свернуть все

Выборочные коэффициенты линейной частичной корреляции, возвращаемые в виде матрицы py-by-px.

  • При вводе x и y матрицы, (i, j) -й элемент является выборкой линейной частичной корреляции между i-м столбцом вy и j-й столбец в x, управляемый для всех столбцов x за исключением столбца j.

  • При вводе x, y, и z матрицы, (i, j) -й элемент является выборкой линейной частичной корреляции между i-м столбцом вy и j-й столбец в x, скорректированный для всех столбцов x за исключением столбца j, после первого контроля обоих x и y для переменных в z.

p-значения, возвращаемые в виде матрицы. Каждый элемент pval является значением p для соответствующего элемента rho. Если pval(i,j) мал, то соответствующая частичная корреляция rho(i,j) статистически значимо отличается от нуля.

partialcorri вычисляет p-значения для линейных и ранговых частичных корреляций с использованием t-распределения Стьюдента для преобразования корреляции. Это точно для линейной частичной корреляции, когда x и z являются нормальными, но являются аппроксимацией большой выборки в противном случае.

Ссылки

[1] Стюарт, Алан, К. Орд и С. Арнольд. Усовершенствованная теория статистики Кендалла. 6-е издание, том 2A, глава 28, Вайли, 2004 год.

[2] Фишер, Рональд А. «Распределение коэффициента частичной корреляции». Метрон 3 (1924): 329-332

См. также

|

Представлен в R2013b