Python'da sınıf i̇çi korelasyon katsayısı nasıl hesaplanır?
Öğelerin veya konuların farklı değerlendiriciler tarafından güvenilir bir şekilde derecelendirilip derecelendirilemeyeceğini belirlemek için sınıf içi korelasyon katsayısı (ICC) kullanılır.
Bir ICC’nin değeri 0’dan 1’e kadar değişebilir; 0, değerlendiriciler arasında hiçbir güvenilirliğin olmadığını, 1 ise mükemmel güvenilirliği gösterir.
Python’da ICC’yi hesaplamanın en kolay yolu penguin istatistik paketindeki penguin.intraclass_corr() işlevini kullanmaktır ve bu işlev aşağıdaki sözdizimini kullanır:
pengouin.intraclass_corr(veriler, hedefler, değerlendiriciler, notlar)
Altın:
- veri: Veri çerçevesinin adı
- hedefler: “Hedefleri” içeren sütunun adı (not edilenler)
- gözden geçirenler: Gözden geçirenleri içeren sütunun adı
- notlar: Notları içeren sütunun adı
Bu eğitimde bu özelliğin kullanımına ilişkin pratik bir örnek sunulmaktadır.
Adım 1: Penguin’i yükleyin
Öncelikle Penguin’i kurmanız gerekiyor:
pip install penguin
2. Adım: Verileri oluşturun
Dört farklı yargıcın altı farklı üniversiteye giriş sınavının kalitesini değerlendirmesinin istendiğini varsayalım. Jürinin puanlarını tutmak için aşağıdaki veri çerçevesini oluşturabiliriz:
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
Adım 3: Sınıf içi korelasyon katsayısını hesaplayın
Daha sonra sınıf içi korelasyon katsayısını hesaplamak için aşağıdaki kodu kullanacağız:
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]
Bu işlev aşağıdaki sonuçları döndürür:
- Açıklama: Hesaplanan ICC türü
- ICC: Sınıf içi korelasyon katsayısı (ICC)
- F: ICC’nin F değeri
- df1, df2: F değeriyle ilişkili serbestlik derecesi
- pval: F değeriyle ilişkili p değeri
- CI95%: ICC için %95 güven aralığı
Burada hesaplanan altı farklı ICC’nin bulunduğunu unutmayın. Aslında, aşağıdaki varsayımlara dayanarak ICC’yi hesaplamanın birkaç yolu vardır:
- Model: tek yönlü rastgele etkiler, iki yönlü rastgele etkiler veya iki yönlü karışık etkiler
- İlişki türü: tutarlılık veya mutlak anlaşma
- Birim: tek değerlendirici veya değerlendiricilerin ortalaması
Bu varsayımların ayrıntılı bir açıklaması için lütfen bu makaleye bakın.