Як обчислити кореляцію між кількома змінними в r


Одним із способів кількісного визначення зв’язку між двома змінними є використання коефіцієнта кореляції Пірсона , який є мірою лінійного зв’язку між двома змінними . Він завжди приймає значення від -1 до 1, де:

  • -1 вказує на абсолютно негативну лінійну кореляцію між двома змінними
  • 0 означає відсутність лінійної кореляції між двома змінними
  • 1 вказує на абсолютно позитивну лінійну кореляцію між двома змінними

У цьому підручнику пояснюється, як обчислити кореляцію між декількома змінними в R, використовуючи наступний кадр даних як приклад:

 #create data frame
df <- data.frame(a <- c(2, 3, 3, 5, 6, 9, 14, 15, 19, 21, 22, 23),
                 b <- c(23, 24, 24, 23, 17, 28, 38, 34, 35, 39, 41, 43),
                 c <- c(13, 14, 14, 14, 15, 17, 18, 19, 22, 20, 24, 26),
                 d <- c(6, 6, 7, 8, 8, 8, 7, 6, 5, 3, 3, 2))

Приклад 1: Кореляція між двома змінними

Наступний код показує, як обчислити кореляцію між двома змінними у кадрі даних:

 cor(df$a, df$b)

[1] 0.9279869

Приклад 2: Кореляція між кількома змінними

Наступний код показує, як обчислити кореляцію між трьома змінними у кадрі даних:

 cor(df[, c(' a ', ' b ', ' c ')])

          ABC
a 1.0000000 0.9279869 0.9604329
b 0.9279869 1.0000000 0.8942139
c 0.9604329 0.8942139 1.0000000

Спосіб інтерпретації результату такий:

  • Кореляція між a і b становить 0,9279869.
  • Кореляція між a і c становить 0,9604329.
  • Кореляція між b і c становить 0,8942139.

Приклад 3: Кореляція між усіма змінними

Наступний код показує, як обчислити кореляцію між усіма змінними у кадрі даних:

 cor(df)

           abcd
a 1.0000000 0.9279869 0.9604329 -0.7915488
b 0.9279869 1.0000000 0.8942139 -0.7917973
c 0.9604329 0.8942139 1.0000000 -0.8063549
d -0.7915488 -0.7917973 -0.8063549 1.0000000

Приклад 4: Кореляція між лише числовими змінними

Наступний код показує, як обчислити кореляцію лише між числовими змінними у кадрі даних:

 cor(df[, unlist ( lapply (df, is. numeric ))])

           abcd
a 1.0000000 0.9279869 0.9604329 -0.7915488
b 0.9279869 1.0000000 0.8942139 -0.7917973
c 0.9604329 0.8942139 1.0000000 -0.8063549
d -0.7915488 -0.7917973 -0.8063549 1.0000000

Приклад 5: Візуалізація кореляцій

Наступний код показує, як створити парну діаграму – тип діаграми, який дозволяє візуалізувати зв’язок між кожною парною комбінацією змінних:

 #load psych package
library(psych)

#create pairs plot
peers. panels (df)

Додаткові ресурси

Як обчислити часткову кореляцію в R
Як обчислити точково-бісеріальну кореляцію в R
Як розрахувати ковзну кореляцію в R

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *