Jak obliczyć korelację między wieloma zmiennymi w r


Jednym ze sposobów ilościowego określenia związku między dwiema zmiennymi jest użycie współczynnika korelacji Pearsona , który jest miarą liniowego związku między dwiema zmiennymi . Zawsze przyjmuje wartość z zakresu od -1 do 1, gdzie:

  • -1 oznacza całkowicie ujemną korelację liniową pomiędzy dwiema zmiennymi
  • Wartość 0 oznacza brak liniowej korelacji pomiędzy dwiema zmiennymi
  • 1 wskazuje doskonale dodatnią korelację liniową pomiędzy dwiema zmiennymi

W tym samouczku wyjaśniono, jak obliczyć korelację między wieloma zmiennymi w języku R, wykorzystując jako przykład następującą ramkę danych:

 #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))

Przykład 1: Korelacja między dwiema zmiennymi

Poniższy kod pokazuje, jak obliczyć korelację między dwiema zmiennymi w ramce danych:

 cor(df$a, df$b)

[1] 0.9279869

Przykład 2: Korelacja między kilkoma zmiennymi

Poniższy kod pokazuje, jak obliczyć korelację między trzema zmiennymi w ramce danych:

 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

Sposób interpretacji wyniku jest następujący:

  • Korelacja między a i b wynosi 0,9279869.
  • Korelacja między a i c wynosi 0,9604329.
  • Korelacja między b i c wynosi 0,8942139.

Przykład 3: Korelacja pomiędzy wszystkimi zmiennymi

Poniższy kod pokazuje, jak obliczyć korelację pomiędzy wszystkimi zmiennymi w ramce danych:

 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

Przykład 4: Korelacja między tylko zmiennymi numerycznymi

Poniższy kod pokazuje, jak obliczyć korelację między tylko zmiennymi numerycznymi w ramce danych:

 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

Przykład 5: Wizualizacja korelacji

Poniższy kod pokazuje, jak utworzyć wykres parami — rodzaj wykresu, który umożliwia wizualizację relacji pomiędzy każdą kombinacją zmiennych parami:

 #load psych package
library(psych)

#create pairs plot
peers. panels (df)

Dodatkowe zasoby

Jak obliczyć korelację częściową w R
Jak obliczyć korelację punktowo-biseryjną w R
Jak obliczyć korelację przesuwną w R

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *