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