1 Sinn und Zweck von Cohens Kappa
Zur kurzen Einordnung: Cohens Kappa berechnet die Interrater-Reliabilität zwischen zwei Personen (=Ratern). Damit nutzt man es zur Beurteilung von Übereinstimmung zwischen zwei unabhängigen Ratern. Außerdem kann es für die Intrarater-Reliabilität verwendet werden, um zu schauen, ob derselbe Rater zu unterschiedlichen Zeitpunkten mit derselben Messmethode ähnliche/gleiche Ergebnisse erzielt.
Zugleich wird mit Cohens Kappa ersichtlich, wie sehr der bzw. die Rater in ihrem bzw. ihren Urteilen übereinstimmen – bereinigt um zufällige Übereinstimmungen. Ein typisches Beispiel ist, ob zwei Ärzte bei Krankheitsdiagnosen übereinstimmen – oder eben nicht. Wenn es sich um mehr als zwei Rater handelt und deren Übereinstimmung eingeschätzt werden soll, ist Fleiss’ Kappa zu berechnen.
2 Voraussetzungen zur Berechnung von Cohens Kappa in R
Für die Berechnung bedarf es lediglich einer nominalen Skalierung der zu prüfenden Variable. Die Einschätzungen der verschiedenen Rater sollten in verschiedenen Variablen, also spaltenweise vorliegen. In etwa so, wie in folgender Übersicht. Hierbei bedeutet eine 0, dass die Rater keine Krankheit diagnostizierten. Eine 1 ist dementsprechend eine diagnostizierte Krankheit. Der vollständige Datensatz ist unten verlinkt.
Wie Daten eingelesen werden, zeigt dieser Artikel.
Rater1 Rater2
0 0
0 0
0 1
1 1
1 1
0 0
0 0
1 1
1 1
0 1
0 1
1 1
1 1
1 1
1 1
... ...
3 Vorbereitungen für Cohens Kappa in R
Die Berechnung von Cohens Kappa in R benötigt ein zusätzliches Paket names “DescTools“. Über install.packages(“DescTools“) und library(DescTools) wird es installiert und geladen:
install.packages("DescTools")
library(DescTools)
Als Nächstes braucht es eine Kreuztabelle. In ihr werden die zwei Rater und deren jeweilige Urteile dargestellt. Allein hieran kann man schon einen gewissen Grad an Übereinstimmung in den Urteilen abschätzen. Hierzu verwendet man den Befehl “xtabs(~ R1 + R2)“. Es ist notwendig die beiden Variablen R1 und R2 (=Raterurteile) in diese Funktion zu übergeben. Da ich den Dataframe nicht attached habe, steht vor den Variablen Rater1 und Rater2 noch jeweils “$data_rater”.
ratertab <- xtabs (~ data_rater$Rater1 + data_rater$Rater2)
Ich speichere die Kreuztabelle in dem Vektor "ratertab" und kann sie mir mit Eingabe dessen in die Konsole direkt ausgeben lassen. Hierfür erhalte ich nun folgende Ausgabe:
data_rater$Rater2
data_rater$Rater1 0 1
0 15 5
1 0 17
Es gibt in dieser 2x2-Matrix genau 4 Fälle:
- 0x0: beide Rater diagnostizieren keine Krankheit (hier: 15)
- 1x0: Rater 1 diagnostiziert eine Krankheit und Rater 2 diagnostiziert keine Krankheit (hier: 0)
- 0x1: Rater 1 diagnostiziert keine Krankheit und Rater 2 diagnostiziert eine Krankheit (hier: 5)
- 1x1: beide Rater diagnostizieren eine Krankheit (hier: 17)
Im vorliegenden Beispiel gibt es 15+17=32 Übereinstimmungen und immerhin nur 0+5=5 Nichtübereinstimmungen. An sich ist das schon eine gute Übereinstimmung der beiden Rater (Ärzte), jedoch können auch zufällige Übereinstimmungen dafür verantwortlich sein. Diese zufälligen Übereinstimmungen werden mittels Cohen's Kappa herausgemittelt.
4 Berechnen von Cohens Kappa in R und Interpretation der Ergebnisse
Nun wird Cohen's Kappa mit der Funktion CohenKappa aus dem Paket "DescTools" (siehe oben) berechnet. Wahlweise gibt man noch "conf.level = 0.95" an, sofern das 95%-Konfidenzintervall benötigt wird. Es können auch das 90%- oder 99%-Konfidenzintervall ausgegeben werden.
CohenKappa(ratertab, conf.level = 0.95)
Hier wird Cohen's Kappa (kappa) sowie das obere und das untere 95%-Konfidenzintervall (lwr.ci und upr.ci) ausgegeben.
kappa lwr.ci upr.ci
0.7338129 0.5168307 0.9507952
Cohen's Kappa beträgt 0,734. Schließlich stellt sich die Frage, wie hoch die Übereinstimmung ist. Sie kann theoretisch zwischen perfekt (1) und schlecht (0) sein. Im Beispiel ist die Übereinstimmung beachtlich ("substantial"). Hierzu dient folgende Systematisierung nach Landis und Koch (1977).
5 Literatur
Landis, J., & Koch, G. (1977). The Measurement of Observer Agreement for Categorical Data. Biometrics, 33(1), 159-174. doi:10.2307/2529310
6 Datensatz zum Download
Weitere nützliche Tutorials findest du auf meinem YouTube-Kanal.
7 Videotutorial
https://www.youtube.com/watch?v=9QxifR2_BoM