Как рассчитать частичную корреляцию в r


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

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

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

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

В этом руководстве объясняется, как вычислить частичную корреляцию в R.

Пример: частичная корреляция в R

Предположим, у нас есть следующий фрейм данных, который отображает текущую оценку, общее количество учебных часов и итоговую оценку за экзамен для 10 студентов:

 #create data frame
df <- data. frame (currentGrade = c(82, 88, 75, 74, 93, 97, 83, 90, 90, 80),
                 hours = c(4, 3, 6, 5, 4, 5, 8, 7, 4, 6),
                 examScore = c(88, 85, 76, 70, 92, 94, 89, 85, 90, 93))

#view data frame
df

   currentGrade hours examScore
1 82 4 88
2 88 3 85
3 75 6 76
4 74 5 70
5 93 4 92
6 97 5 94
7 83 8 89
8 90 7 85
9 90 4 90
10 80 6 93

Чтобы вычислить частичную корреляцию между каждой парной комбинацией переменных в кадре данных, мы можем использовать функцию pcor() из библиотеки ppcor :

 library (ppcor)

#calculate partial correlations
pcor(df)

$estimate
             currentGrade hours examScore
currentGrade 1.0000000 -0.3112341 0.7355673
hours -0.3112341 1.0000000 0.1906258
examScore 0.7355673 0.1906258 1.0000000

$p.value
             currentGrade hours examScore
currentGrade 0.00000000 0.4149353 0.02389896
hours 0.41493532 0.0000000 0.62322848
examScore 0.02389896 0.6232285 0.00000000

$statistic
             currentGrade hours examScore
currentGrade 0.0000000 -0.8664833 2.8727185
hours -0.8664833 0.0000000 0.5137696
examScore 2.8727185 0.5137696 0.0000000

$n
[1] 10

$gp
[1] 1

$method
[1] "pearson"

Вот как интерпретировать результат:

Частичная корреляция между учебными часами и оценкой на итоговом экзамене:

Частичная корреляция между учебными часами и оценкой на выпускном экзамене составляет 0,191 , что представляет собой небольшую положительную корреляцию. По мере увеличения количества учебных часов результаты экзаменов также имеют тенденцию к увеличению, при условии, что текущая оценка остается неизменной.

Значение p для этой частной корреляции составляет 0,623 , что не является статистически значимым при α = 0,05.

Частичная корреляция между текущей оценкой и оценкой итогового экзамена:

Частичная корреляция между текущей оценкой и оценкой итогового экзамена составляет 0,736 , что представляет собой сильную положительную корреляцию. По мере повышения текущей оценки баллы на экзаменах также имеют тенденцию к увеличению, при условии, что количество учебных часов остается постоянным.

Значение p для этой частной корреляции составляет 0,024 , что статистически значимо при α = 0,05.

Частичная корреляция между текущей оценкой и количеством изученных часов:

Частичная корреляция между текущей оценкой, количеством учебных часов и оценкой итогового экзамена составляет -0,311 , что представляет собой небольшую отрицательную корреляцию. По мере повышения текущей оценки итоговая оценка за экзамен имеет тенденцию к снижению, при условии, что итоговая оценка за экзамен останется неизменной.

Значение p для этой частной корреляции составляет 0,415 , что не является статистически значимым при α = 0,05.

Результат также говорит нам о том, что для расчета частичной корреляции использовался метод «Пирсона».

В функции pcor() мы также могли бы указать «Кендалл» или «Пирсон» в качестве альтернативных методов расчета корреляций.

Дополнительные ресурсы

В следующих руководствах объясняется, как выполнять другие распространенные задачи в R:

Как рассчитать ранговую корреляцию Спирмена в R
Как рассчитать взаимную корреляцию в R
Как рассчитать скользящую корреляцию в R
Как рассчитать двухрядную корреляцию в R

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *