Zum Inhalt springen

GNU R: fisher.test

Aus Wikibooks


fisher.test(x) führt den exakten Test nach Fisher auf das Objekt x aus.


Handhabung

[Bearbeiten]

Es liegt eine Vierfeldertafel in der Matrix x vor, z.B. so:

x <- matrix(c(13,15,58,67),2,2)                           # erstellt eine 2x2 Felder Tafel
dimnames(x) <-  list(c("Maenner", "Frauen"), c("A", "B")) # Namen zuweisen

Wenn man nun x aufruft erhält man:

> x
         A  B
Maenner 13 58
Frauen  15 67

Wir wollen wissen, ob ein Unterschied zwischen Männern und Frauen besteht und überprüfen daher die Nullhypothese: "Es besteht kein Unterschied zwischen Männern und Frauen." Der exakte Test nach Fischer wird nun durchgeführt mit:

fisher.test(x)

Als Ergebnis liefert R:

	Fisher's Exact Test for Count Data

data:  x 
p-value = 1
alternative hypothesis: true odds ratio is not equal to 1 
95 percent confidence interval:
0.4018255 2.4668640 
sample estimates:
odds ratio 
  1.001142 

Der p-Wert ist größer als 0,05 => die Nullhypothese konnte nicht abgelehnt werden.

Fishers exakter Test ist nicht nur auf 4-Feldertafeln beschränkt. Es können auch größere Kontingenztafeln ausgewertet werden. Für Kontigenztafeln größer 2*2 entfallen der odds ratio und die zugehörigen Konfidenzintervalle.

Die Ausgabe ist intern als Liste organisiert. Es ist möglich auf einzelne Werte der Ausgabe zuzugreifen, indem die Notation für Listen verwendet wird oder alternativ einzelne Elemente über ihre Namen angesprochen werden.

resultat = fisher.test(x)
resultat[[1]] oder resultat$p.value   

gibt den p-Wert aus: [1] 1

resultat[[2]][[1]]  

liefert das untere Limit des Konfidenzintervalls.

resultat[[2]][[2]]  

liefert das obere Limit des Konfidezintervalls.

resultat[[3]] oder resultat$null.value  

gibt das odds ration aus: [1] 1.001142

siehe auch

[Bearbeiten]
[Bearbeiten]