#Interraterreliabilität berechnen install.packages("DescTools") library(DescTools) #Datensatz erstellen. Eine Person Rater1 und eine Rater2. Codiert Einschluss mit 1 #und Ausschluss mit 0. #Datensatz einlesen, Anpassen an die eigene Working Directory #Titelscreening Name: Tab_04022025.csv setwd("") data_rater <- read.table("IRR Beispiel.csv", header=TRUE, sep=";") View(data_rater) #Kreuztabelle erstellen, Rater1, Rater2 ratertab_Kappa <- xtabs (~ data_rater$Rater1 + data_rater$Rater2) ratertab_Kappa #Wir sehen 9 Übereinstimmungen bei 0/Ausschluss, 7 Übereinstimmungen bei 1/Einschluss #4 Fälle in denen sich Rater 1 und Rater 2 uneinig sind. #Cohens Kappa berechnen (bei 2 Ratern) CohenKappa(ratertab) #Wir haben ein Cohens Kappa von 0.59. Das ist nach Landis und Koch (1977) eine #moderate Übereinstimmung. #Ab 3 Ratern ist Fleiss Kappa besser #Aus der CsV Datei ersteinmal das Subset erstellen ratertab_Fleiss <- subset(data_rater, select = c(Rater1, Rater2, Rater3)) #Fleiss Kappa kann mit demselben Package DescTools und der Funktion KappaM berechnet werden. KappaM(ratertab_Fleiss, method = "Fleiss") #Wir haben ein Fleiss Kappa von 0.67. Das ist nach Landis und Koch (1977) eine #substantielle Übereinstimmung. #Bei ordinal skalierten Variablen und 2 Ratern eignet sich eine gewichtete Form #von Cohens Kappa. In DescTools gibt es zwei Varianten "Equal Spacing", eine lineare #Gewichtung und "Fleiss-Cohen", eine quadratische Gewichtung, womit sie größere #Abweichungen stärker bestrafen als kleinere Abweichungen. Das heißt, wenn die #Rater:innen häufig weit auseinander liegen, ergibt sich für Fleiss-Cohen ein #niedrigerer Wert. Wenn sie häufig nah beieinander liegen oder gleich sind, ergibt #sich für Equal-Spacing ein niedrigerer Wert #Zunächst wird eine Tabelle erstellt, die die Häufigkeit der Angaben der jeweiligen #Rater anzeigt. Im Beispiel hatte die Ordinalskala 5 Stufen. tab <- table(data_rater$Rater4,data_rater$Rater5) print(tab) #Dann wird Cohens Kappa mit "Fleiss-Cohen" oder "Equal-Spacing" gewichtet. CohenKappa(tab, weights = "Fleiss-Cohen") CohenKappa(tab, weights = "Equal-Spacing") #Es ergibt sich eine Übereinstimmung von 0.80. Das ist nach Landis und Koch (1977) #eine substantielle Übereinstimmung. #Bei metrisch skalierten Variablen und 2 Ratern eignet sich der Intraclass Correlation #Coefficient (ICC). Dafür kannst du das psych package nutzen mit der Funktion ICC. #Lade das psych package. library(psych) # Wähle die Bewertungs-Spalten aus. icc_data <- data_rater[, c("Rater4", "Rater5")] # ICC berechnen. ICC(icc_data) #Die Tabelle gibt die verschiedene Werte aus. "Single" bzw. type ICC1-3 geben #Werte für eine einzelne Rater:in aus. "Average" bzw. ICC1k-3k geben Mittelwerte #für beide Rater:innen aus. "Absolute Agreement" gibt den Wert für eine genaue #Übereinstimmung wieder. Random und Fixed schauen sich die Konsistenz der Übereinstimmung #an, z.B. wenn Rater:in 4 immer 2 Punkte höher wertet als Rater:in 5. "Random" bedeutet, #dass eine Rater:in zufällig ausgewöhlt wurde und "fixed", dass es sich um eine #spezifisch aus gewählt Rater:in handelt. Im Beispiel eines systematsichen Reviews #möchtest du häufig die Zuverlässigkeit zweier konkreter Rater:innen beurteilen, #daher eignet sich ICC3k am besten. #In diesem Beispiel ergibt sich ein ICC = 0.89. Nach Cicchetti (1994) ist die #Übereinstimmung "excellent".