Jak obliczyć korelację polichoryczną w r


Korelacja polichoryczna służy do obliczania korelacji między zmiennymi porządkowymi.

Przypomnijmy, że zmienne porządkowe to zmienne, których możliwe wartości są kategoryczne i mają naturalny porządek.

Oto kilka przykładów zmiennych mierzonych na skali porządkowej:

  • Satysfakcja : Bardzo niezadowolony, niezadowolony, neutralny, zadowolony, bardzo zadowolony
  • Poziom dochodów : Niski dochód, średni dochód, wysoki dochód
  • Status stanowiska : Analityk wejścia, Analityk I, Analityk II, Starszy analityk
  • Poziom bólu : Niska ilość, średnia ilość, duża ilość

Wartość korelacji polichorycznej waha się od -1 do 1 gdzie:

  • -1 oznacza doskonałą korelację ujemną
  • 0 oznacza brak korelacji
  • 1 wskazuje na doskonałą dodatnią korelację

Możemy użyć funkcji polichor(x, y) z pakietu Polycor , aby obliczyć korelację polichoryczną między dwiema zmiennymi porządkowymi w R.

Poniższe przykłady pokazują, jak w praktyce wykorzystać tę funkcję.

Przykład 1: Oblicz korelację polichoryczną dla ocen filmów

Załóżmy, że chcesz wiedzieć, czy dwie różne agencje oceniające filmy mają wysoką korelację między ocenami swoich filmów.

Prosimy każdą agencję o ocenę 20 różnych filmów w skali od 1 do 3, gdzie:

  • 1 oznacza „zły”
  • 2 oznacza „biedny”
  • 3 oznacza „dobrze”

Możemy użyć następującego kodu w R, aby obliczyć polichoryczną korelację między ratingami dwóch agencji:

 library (polycor)

#define movie ratings for each agency
agency1 <- c(1, 1, 2, 2, 3, 2, 2, 3, 2, 3, 3, 2, 1, 2, 2, 1, 1, 1, 2, 2)
agency2 <- c(1, 1, 2, 1, 3, 3, 3, 2, 2, 3, 3, 3, 2, 2, 2, 1, 2, 1, 3, 3)

#calculate polychoric correlation between ratings
polychor(agency1, agency2)

[1] 0.7828328

Okazuje się, że korelacja polichoryczna wynosi 0,78 .

Wartość ta jest dość wysoka, co wskazuje, że istnieje silny pozytywny związek pomiędzy ocenami poszczególnych agencji.

Przykład 2: Oblicz korelację polichoryczną dla recenzji restauracji

Załóżmy, że chcesz wiedzieć, czy dwie różne restauracje w okolicy mają korelację między ocenami klientów swoich restauracji.

Losowo przeprowadzamy ankietę wśród 20 klientów, którzy jedli w obu restauracjach i prosimy ich o ocenę ich ogólnego zadowolenia w skali od 1 do 5, gdzie:

  • 1 oznacza „bardzo niezadowolony”
  • 2 oznacza „niezadowolony”
  • 3 oznacza „neutralny”
  • 4 oznacza „zadowolony”
  • 5 oznacza „bardzo zadowolony”

Możemy użyć następującego kodu w języku R, aby obliczyć polichoryczną korelację między ocenami dwóch restauracji:

 library (polycor)

#define ratings for each restaurant
restaurant1 <- c(1, 1, 2, 2, 2, 3, 3, 3, 2, 2, 3, 4, 4, 5, 5, 4, 3, 4, 5, 5)
restaurant2 <- c(4, 3, 3, 4, 3, 3, 4, 5, 4, 4, 4, 5, 5, 4, 2, 1, 1, 2, 1, 4)

#calculate polychoric correlation between ratings
polychor(restaurant1, restaurant2)

[1] -0.1322774

Okazuje się, że korelacja polichoryczna wynosi -0,13 .

Wartość ta jest bliska zeru, co wskazuje, że istnieje bardzo niewielki (jeśli w ogóle) związek między ocenami restauracji.

Dodatkowe zasoby

Poniższe samouczki wyjaśniają, jak obliczyć inne popularne współczynniki korelacji w R:

Jak obliczyć korelację rang Spearmana w R
Jak obliczyć korelację punktowo-biseryjną w R
Jak obliczyć korelację krzyżową w R
Jak obliczyć korelację przesuwną w R
Jak obliczyć korelację częściową w R

Dodaj komentarz

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