Jak obliczyć współczynnik korelacji wewnątrzklasowej w pythonie
Współczynnik korelacji wewnątrzklasowej (ICC) służy do określenia, czy pozycje lub tematy mogą być wiarygodnie ocenione przez różnych oceniających.
Wartość ICC może mieścić się w przedziale od 0 do 1, gdzie 0 oznacza brak wiarygodności wśród oceniających, a 1 oznacza doskonałą niezawodność.
Najłatwiejszym sposobem obliczenia ICC w Pythonie jest użycie funkcji penguin.intraclass_corr() z pakietu statystyk penguin , która wykorzystuje następującą składnię:
pengouin.intraclass_corr(dane, cele, osoby oceniające, oceny)
Złoto:
- dane: nazwa ramki danych
- cele: Nazwa kolumny zawierającej „cele” (rzeczy odnotowane)
- recenzenci: Nazwa kolumny zawierającej recenzentów
- notatki: Nazwa kolumny zawierającej uwagi
W tym samouczku przedstawiono praktyczny przykład użycia tej funkcji.
Krok 1: Zainstaluj Penguina
Przede wszystkim musisz zainstalować Penguina:
pip install penguin
Krok 2: Utwórz dane
Załóżmy, że czterech różnych sędziów zostaje poproszonych o ocenę jakości sześciu różnych egzaminów wstępnych na studia. Możemy utworzyć następującą ramkę danych do przechowywania ocen sędziów:
import pandas as pd
#createDataFrame
df = pd. DataFrame ({' exam ': [1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6,
1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6],
' judge ': ['A', 'A', 'A', 'A', 'A', 'A',
'B', 'B', 'B', 'B', 'B', 'B',
'C', 'C', 'C', 'C', 'C', 'C',
'D', 'D', 'D', 'D', 'D', 'D'],
' rating ': [1, 1, 3, 6, 6, 7, 2, 3, 8, 4, 5, 5,
0, 4, 1, 5, 5, 6, 1, 2, 3, 3, 6, 4]})
#view first five rows of DataFrame
df. head ()
exam judge rating
0 1 A 1
1 2 A 1
2 3 A 3
3 4 To 6
4 5 A 6
Krok 3: Oblicz współczynnik korelacji wewnątrzklasowej
Następnie użyjemy następującego kodu do obliczenia współczynnika korelacji wewnątrzklasowej:
import penguin as pg icc = pg. intraclass_corr (data=df, targets=' exam ', raters=' judge ', ratings=' rating ') icc. set_index (' Type ') Description ICC F df1 df2 pval CI95% Kind ICC1 Single raters absolute 0.505252 5.084916 5 18 0.004430 [0.11, 0.89] ICC2 Single random raters 0.503054 4.909385 5 15 0.007352 [0.1, 0.89] ICC3 Single fixed raters 0.494272 4.909385 5 15 0.007352 [0.09, 0.88] ICC1k Average raters absolute 0.803340 5.084916 5 18 0.004430 [0.33, 0.97] ICC2k Average random raters 0.801947 4.909385 5 15 0.007352 [0.31, 0.97] ICC3k Average fixed raters 0.796309 4.909385 5 15 0.007352 [0.27, 0.97]
Ta funkcja zwraca następujące wyniki:
- Opis: Typ obliczonego ICC
- ICC: współczynnik korelacji wewnątrzklasowej (ICC)
- F: Wartość F ICC
- df1, df2: stopnie swobody związane z wartością F
- pval: Wartość p powiązana z wartością F
- CI95%: 95% przedział ufności dla ICC
Należy pamiętać, że obliczono tutaj sześć różnych współczynników ICC. Rzeczywiście istnieje kilka sposobów obliczenia ICC w oparciu o następujące założenia:
- Model: jednokierunkowe efekty losowe, dwukierunkowe efekty losowe lub dwukierunkowe efekty mieszane
- Rodzaj relacji: konsekwencja lub absolutna zgoda
- Jednostka: pojedynczy oceniający lub średnia oceniających
Szczegółowe wyjaśnienie tych założeń znajdziesz w tym artykule .