Zu den Daten

Die folgende 2x2 Tabelle zeigt die Daten einer Studie, welche durchgeführt wurde, um die Wirksamkeit von Aspirin zur Prävention eines frühzeitigen Todes nach einem Herzinfarkt zu evaluieren. Hier findest du weitere Informationen zum den Daten.

##          outcome
## treatment survived death
##   placebo      354    52
##   aspirin      725    85

Variablen anhand einer 2x2 Tabelle erstellen

Aufgaben

  1. Erstelle anhand der Werte in der 2x2 Tabelle oben folgende zwei Variablen:
  • Die Outcome-Variable (outcome) mit den Ausprägungen “survived” = 0 und “death” = 1
  • Die Exposure-Variable (treatment) mit den Ausprägungen “placebo” = 0 und “aspirin” = 1
  • Beide Variablen sollen Faktoren sein.
  1. Erstelle die 2x2 Tabelle. Die Exposition stellt die Zeilen dar, das Outcome die Spalten. Speichere die Tabelle als my_tab. Diese 2x2 Tabelle sollte gleich aussehen, wie diese oben.

Lösungen

  1. Erstelle anhand der Werte in der 2x2 Tabelle oben folgende zwei Variablen:
treatment <- factor(c(rep(0, 406), rep(1, 810)), levels = c(0, 1), labels = c("placebo", "aspirin"))
outcome <- factor(c(rep(1, 52), rep(0, 406-52), rep(1, 85), rep(0,810-85)), levels = c(0, 1), labels = c("survived", "death"))

Falls dir nicht klar ist, wie man anhand der Tabelle die Rohwerte erhält, hilft dir vielleicht dieses Video


  1. Erstelle die 2x2 Tabelle. Die Exposition stellt die Zeilen dar, das Outcome die Spalten. Speichere die Tabelle als “my_tab”. Diese 2x2 Tabelle sollte gleich aussehen, wie diese oben.
my_tab <- table(treatment, outcome)
my_tab
##          outcome
## treatment survived death
##   placebo      354    52
##   aspirin      725    85

Proportionen berechnen

Aufgaben

  1. Berechne die Proportion und das dazugehörige 95% CI der Personen mit einem Placebo, welche gestorben sind.
  2. Berechne die Proportion und das dazugehörige 95% CI der Personen mit Aspirin, welche gestorben sind.
  3. Berechne den p-Wert und das 95% CI für die Differenz der beiden Proportionen.
  4. Was sagt uns dieser p-Wert und das 95% CI?

Verwende für alle Berechnungen die prop.test() Funktion.


Lösungen

  1. Berechne die Proportion und das dazugehörige 95% CI der Personen mit einem Placebo, welche gestorben sind.
prop.test(my_tab[1,2], sum(my_tab[1,])) 
## 
##  1-sample proportions test with continuity correction
## 
## data:  my_tab[1, 2] out of sum(my_tab[1, ]), null probability 0.5
## X-squared = 223.16, df = 1, p-value < 2.2e-16
## alternative hypothesis: true p is not equal to 0.5
## 95 percent confidence interval:
##  0.09793556 0.16545553
## sample estimates:
##         p 
## 0.1280788

Anmerkung: “null probability 0.5” hat in diesem Fall keine Bedeutung. Dies bedeutet lediglich, dass die Nullhypothese in diese Fall besagt, dass \(prop = 0.5\)


  1. Berechne die Proportion und das dazugehörige 95% CI der Personen mit Aspirin, welche gestorben sind.
prop.test(my_tab[2,2], sum(my_tab[2,]))
## 
##  1-sample proportions test with continuity correction
## 
## data:  my_tab[2, 2] out of sum(my_tab[2, ]), null probability 0.5
## X-squared = 504.1, df = 1, p-value < 2.2e-16
## alternative hypothesis: true p is not equal to 0.5
## 95 percent confidence interval:
##  0.08510476 0.12860969
## sample estimates:
##         p 
## 0.1049383

Anmerkung: “null probability 0.5” hat in diesem Fall keine Bedeutung. Dies bedeutet lediglich, dass die Nullhypothese in diese Fall besagt, dass \(prop = 0.5\)


  1. Berechne den p-Wert und das 95% CI für die Differenz der beiden Proportionen.
prop.test(c(my_tab[1,2], my_tab[ 2,2]), c(sum(my_tab[1,]), sum(my_tab[2,])))
## 
##  2-sample test for equality of proportions with continuity correction
## 
## data:  c(my_tab[1, 2], my_tab[2, 2]) out of c(sum(my_tab[1, ]), sum(my_tab[2, ]))
## X-squared = 1.2264, df = 1, p-value = 0.2681
## alternative hypothesis: two.sided
## 95 percent confidence interval:
##  -0.01746498  0.06374608
## sample estimates:
##    prop 1    prop 2 
## 0.1280788 0.1049383

Mit der manuellen Eingabe prop.test(c(52,85), c(52+354, 85+725)) kommt genau das Selbe heraus.


  1. Was sagt uns dieser p-Wert und das 95% CI?

Die Wahrscheinlichkeit für einen Unterschied von -2.3% (oder einen extremeren) unter der Annahme, dass H0 stimmt, ist 26.81%. Das 95% CI sagt uns, dass die Differenz sowohl negativ wie positiv sein kann. Die Evidenz gegen H0 ist also nicht sehr stark.


Odds Ratio

Mit der prop.test() Funktion hast du oben untersucht, ob sich die die Differenz der Proportionen von zwei Gruppen von 0 unterscheidet. Man könnte auch sagen, du hast untersucht, ob es einen Zusammenhang zwischen den Variablen treatment und death gibt. Um Zusammenhänge zwischen zwei dichotomen Variablen zu untersuchen, gibt es noch weitere Möglichkeiten. Eine Möglichkeit ist das Odds Ratio.

Aufgaben

  1. Was ist beim aktuellen Beispiel der Event und was ist die Exposition?
  2. Um das Odds Ratio zu berechnen, kannst du die oddsratio() Funktion aus dem package epitools brauchen. Schau im Hilfemenü mit ?oddsratio zuerst nach, wie die 2x2 Tabelle ausgerichtet sein muss. Entspricht my_tab diesen Vorgaben?
  3. Berechne das Odds Ratio, um in der Aspirin-Gruppe zu sterben.
  4. Interpretiere das Odds Ratio.
  5. Wie sind das 95% CI und der p-Wert dieses Odds Ratios zu interpretieren?
  6. Was ist das Odds Ratio, um in der Placebo-Gruppe zu überleben?

Lösungen

  1. Was ist der Event und was ist die Exposition?

Der Event ist death == "death" und die Exposition ist treatment == "aspirin"


  1. Um das Odds Ratio zu berechnen, kannst du die oddsratio() Funktion aus dem package epitools brauchen. Schau im Hilfemenü mit ?oddsratio zuerst nach, wie die 2x2 Tabelle ausgerichtet sein muss. Entspricht my_tab diesen Vorgaben?
library(epitools)
# ?oddsratio # So das Hilfemenü abrufen
my_tab
##          outcome
## treatment survived death
##   placebo      354    52
##   aspirin      725    85

Ja, die Anordnung entspricht den Vorgaben der Funktion (obwohl es für das Odds Ratio eigentlich keine Rolle spielt, siehe weiter unten).


  1. Berechne das Odds Ratio, um in der Aspirin-Gruppe zu sterben.
oddsratio(my_tab)
## $data
##          outcome
## treatment survived death Total
##   placebo      354    52   406
##   aspirin      725    85   810
##   Total       1079   137  1216
## 
## $measure
##          odds ratio with 95% C.I.
## treatment  estimate     lower    upper
##   placebo 1.0000000        NA       NA
##   aspirin 0.7974502 0.5535838 1.158314
## 
## $p.value
##          two-sided
## treatment midp.exact fisher.exact chi.square
##   placebo         NA           NA         NA
##   aspirin  0.2321007    0.2485889   0.228752
## 
## $correction
## [1] FALSE
## 
## attr(,"method")
## [1] "median-unbiased estimate & mid-p exact CI"

  1. Interpretiere das Odds Ratio

Das Odds Ratio ist 0.7975. Die Odds in der Aspirin-Gruppe, um zu sterben entspricht 79.75% der Odds in der Placebo-Gruppe. Oder anders gesagt, die Odds in der Aspirin-Gruppe, um zu sterben sind 20.25% tiefer als in der Placebo-Gruppe.


  1. Wie sind das 95% CI und der p-Wert dieses Odds Ratios zu interpretieren?

Das 95% CI sagt uns, dass unsere beobachtete Stichprobe mit einem wahren OR (in der Population) von zwischen 0.55 und 1.15 kompatibel ist. Genauer: wir haben eine Sicherheit von 95%, dass das wahre OR zwischen 0.55 und 1.15 ist. Ein Wert von 1 ist also durchaus kompatibel mit den Daten. Möglicherweise sterben in der Population sogar mehr Leute mit Aspirin als ohne (OR >1). Der Chi-squared Test testet, ob OR = 1, was gleichbedeutend ist mit keinem Unterschied zwischen den Gruppen. Wenn wir den p-Wert vom Chi-squared Test anschauen, beträgt dieser 22.88%. Es gibt wenig Evidenz gegen H0. Anmerkung: Der prop.test() oben hat automatisch eine Korrektur gemacht (“continuity correction”). Hätten wir diesen Test ohne diese Korrektur gemacht (correct = FALSE), wären die p-Werte von oddsratio() und prop.test() identisch.


  1. Was ist das Odds Ratio um in der Placebo-Gruppe zu überleben?

Odds Ratios sind symmetrisch. Demnach ist das Odds Ratio, um in der Placebo-Gruppe zu überleben das Gleiche, wie das Odds Ratio, um in der Aspirin-Gruppe zu sterben. Siehe die Outputs unten: obwohl die Tabelle umgekehrt angeordnet ist, bleibt das OR gleich:

oddsratio(my_tab) # Wie oben
## $data
##          outcome
## treatment survived death Total
##   placebo      354    52   406
##   aspirin      725    85   810
##   Total       1079   137  1216
## 
## $measure
##          odds ratio with 95% C.I.
## treatment  estimate     lower    upper
##   placebo 1.0000000        NA       NA
##   aspirin 0.7974502 0.5535838 1.158314
## 
## $p.value
##          two-sided
## treatment midp.exact fisher.exact chi.square
##   placebo         NA           NA         NA
##   aspirin  0.2321007    0.2485889   0.228752
## 
## $correction
## [1] FALSE
## 
## attr(,"method")
## [1] "median-unbiased estimate & mid-p exact CI"
oddsratio(my_tab, rev = "both") # Umgekehrte Anordnung der Tabelle
## $data
##          outcome
## treatment death survived Total
##   aspirin    85      725   810
##   placebo    52      354   406
##   Total     137     1079  1216
## 
## $measure
##          odds ratio with 95% C.I.
## treatment  estimate     lower    upper
##   aspirin 1.0000000        NA       NA
##   placebo 0.7974502 0.5535838 1.158314
## 
## $p.value
##          two-sided
## treatment midp.exact fisher.exact chi.square
##   aspirin         NA           NA         NA
##   placebo  0.2321007    0.2485889   0.228752
## 
## $correction
## [1] FALSE
## 
## attr(,"method")
## [1] "median-unbiased estimate & mid-p exact CI"
?oddsratio

Risk Ratio

Eine weitere Möglichkeit, um einen Zusammenhang zwischen zwei dichotomen Variablen zu untersuchen ist das Risk Ratio. Voraussetzung ist natürlich, dass wir überhaupt über Risiken sprechen können. Die Daten müssen also von einer longitudinalen Studie stammen (z.B. Kohortenstudie oder RCT). Wir nehmen an, dass bei unserem Beispiel diese Voraussetzung erfüllt ist und wir demnach etwas über Risiken aussagen können.

Aufgaben

  1. Brauche die riskratio() Funktion aus dem package epitools, um das Risk Ratio zu berechnen, in der Aspirin-Gruppe zu sterben. Oben haben wir bereits sichergestellt, dass die Tabelle richtig orientiert ist.
  2. Was sagt uns dieses Risk Ratio, dessen 95% CI und dessen p-Wert?
  3. Was ist das Risk Ratio, um in der Placebo-Gruppe zu überleben?
  4. In der Studie von Graf et al. (2020) steht im Resultateteil folgendes: “Der Anteil gestürzter Patientinnen und Patienten mit Verwirrtheitssymptomen (n = 514) lag mit 12,3 % (n = 63) 4,4- mal höher als bei Patientinnen und Patienten ohne Verwirrtheitssymptome (n = 1417) mit 2,8 % (n = 39).” Leider geben die Autoren weder p-Wert noch das 95% CI an. Berechne diese Werte.

Lösungen

  1. Brauche die riskratio() Funktion aus dem package epitools, um das Risk Ratio zu berechnen. Oben haben wir bereits sichergestellt, dass die Tabelle richtig orientiert ist.
riskratio(my_tab)
## $data
##          outcome
## treatment survived death Total
##   placebo      354    52   406
##   aspirin      725    85   810
##   Total       1079   137  1216
## 
## $measure
##          risk ratio with 95% C.I.
## treatment  estimate     lower    upper
##   placebo 1.0000000        NA       NA
##   aspirin 0.8193257 0.5926804 1.132642
## 
## $p.value
##          two-sided
## treatment midp.exact fisher.exact chi.square
##   placebo         NA           NA         NA
##   aspirin  0.2321007    0.2485889   0.228752
## 
## $correction
## [1] FALSE
## 
## attr(,"method")
## [1] "Unconditional MLE & normal approximation (Wald) CI"

  1. Was sagt uns dieses Risk Ratio, dessen 95% CI und dessen p-Wert?

Das Risk Ratio beträgt 0.82. Das Risiko für einen frühzeitigen Tod nach einem Herzinfarkt ist in der Aspirin-Gruppe 18% tiefer. Oder anders: das Risiko für einen frühzeitigen Tod nach einem Herzinfarkt in der Aspirin-Gruppe entspricht 82% desjenigen in der Placebo-Gruppe.

Das 95% CI sagt uns, dass unsere beobachtet Stichprobe mit einem wahren RR (in der Population) zwischen 0.59 und 1.13 kompatible ist. Genauer: wir haben eine Sicherheit von 95%, dass das wahre Risk Ratio zwischen 0.59 und 1.13 ist. Ein Wert von 1 ist also durchaus kompatibel mit den Daten. Möglicherweise sterben in der Population sogar mehr Leute mit Aspirin als ohne (RR >1). Der Chi-squared Test testet ob RR = 1, was gleichbedeutend ist mit keinem Unterschied zwischen den Gruppen. Wenn wir den p-Wert vom Chi-squared Test anschauen, beträgt dieser 22.88%. Es gibt keine Evidenz gegen H0.

Anmerkung: Der prop.test() oben hat automatisch eine Korrektur gemacht (“continuity correction”). Hätten wir diesen Test ohne diese Korrektur gemacht (correct = FALSE), wären die p-Werte von prop.test() und riskratio() identisch.


  1. Was ist das Risk Ratio, um in der Placebo-Gruppe zu überleben?

Im Gegensatz zu Odds Ratios sind Risk Ratios eben nicht symmetrisch. Demnach ist das Risk Ratio, um in der Placebo-Gruppe zu überleben nicht das Gleiche, wie das Risk Ratio, um in der Aspirin-Gruppe zu sterben. Siehe die Outputs unten: die Tabelle wurde umgekehrt angeordnet und das Risk Ratio (aber nicht der p-Wert) verändert sich:

riskratio(my_tab) # Wie oben
## $data
##          outcome
## treatment survived death Total
##   placebo      354    52   406
##   aspirin      725    85   810
##   Total       1079   137  1216
## 
## $measure
##          risk ratio with 95% C.I.
## treatment  estimate     lower    upper
##   placebo 1.0000000        NA       NA
##   aspirin 0.8193257 0.5926804 1.132642
## 
## $p.value
##          two-sided
## treatment midp.exact fisher.exact chi.square
##   placebo         NA           NA         NA
##   aspirin  0.2321007    0.2485889   0.228752
## 
## $correction
## [1] FALSE
## 
## attr(,"method")
## [1] "Unconditional MLE & normal approximation (Wald) CI"
riskratio(my_tab, rev = "both") # Umgekehrte Anordnung der Tabelle
## $data
##          outcome
## treatment death survived Total
##   aspirin    85      725   810
##   placebo    52      354   406
##   Total     137     1079  1216
## 
## $measure
##          risk ratio with 95% C.I.
## treatment  estimate     lower   upper
##   aspirin 1.0000000        NA      NA
##   placebo 0.9741464 0.9321088 1.01808
## 
## $p.value
##          two-sided
## treatment midp.exact fisher.exact chi.square
##   aspirin         NA           NA         NA
##   placebo  0.2321007    0.2485889   0.228752
## 
## $correction
## [1] FALSE
## 
## attr(,"method")
## [1] "Unconditional MLE & normal approximation (Wald) CI"

  1. In der Studie von Graf et al. (2020) steht im Resultateteil folgendes: “Der Anteil gestürzter Patientinnen und Patienten mit Verwirrtheitssymptomen (n = 514) lag mit 12,3 % (n = 63) 4,4- mal höher als bei Patientinnen und Patienten ohne Verwirrtheitssymptome (n = 1417) mit 2,8 % (n = 39).” Leider geben die Autoren weder p-Wert noch das 95% CI an. Berechne diese Werte.
group <- c(rep("delir", 514), rep("control", 1417))
fall <- c(rep("yes", 63), rep("no",514-63), rep("yes", 39), rep("no", 1417-39))

table(group,fall)
##          fall
## group       no  yes
##   control 1378   39
##   delir    451   63
library(epitools)
riskratio(table(group,fall))
## $data
##          fall
## group       no yes Total
##   control 1378  39  1417
##   delir    451  63   514
##   Total   1829 102  1931
## 
## $measure
##          risk ratio with 95% C.I.
## group     estimate    lower    upper
##   control 1.000000       NA       NA
##   delir   4.453307 3.026076 6.553685
## 
## $p.value
##          two-sided
## group       midp.exact fisher.exact   chi.square
##   control           NA           NA           NA
##   delir   2.087219e-14 2.466358e-14 1.552347e-16
## 
## $correction
## [1] FALSE
## 
## attr(,"method")
## [1] "Unconditional MLE & normal approximation (Wald) CI"

Warum die Autoren beim Risk Ratio nicht auf 4.5 aufgerundet haben, habe ich nicht herausgefunden.



Chi-squared Test

Der Chi-Quadrat Test ist eine weitere Möglichkeit, Zusammenhänge zwischen zwei kategorialen Variablen zu untersuchen. Wenn wir den Chi-squared Test auf das Aspirin-Beispiel von oben anwenden, sieht das wie folgt aus:

chisq.test(my_tab)
## 
##  Pearson's Chi-squared test with Yates' continuity correction
## 
## data:  my_tab
## X-squared = 1.2264, df = 1, p-value = 0.2681

Nehmen wir die Yates’ continuity correction raus, erhalten wir wiederum den gleichen p-Wert wie bei der oddratio() Funktion und der riskratio() Funktion, weil dort bereits ein Chi-Quadrat Test gemacht wurde:

chisq.test(my_tab, correct = FALSE)
## 
##  Pearson's Chi-squared test
## 
## data:  my_tab
## X-squared = 1.4486, df = 1, p-value = 0.2288


Bei dichotomen Daten bietet sich die Berechnung von Odds Ratios und Risk Ratios an, da sie als Effektgrössen dienen. Sie geben uns also einen Hinweis zur grösse eines Effekts. Analysiert man hingegen kategoriale Variablen mit mehr als zwei Ausprägungsgeraden, dann ist eine Berechnung von Odds Ratios oder Risk Ratios nicht mehr möglich. In dieser Situation ist ein Chi-squared Test hilfreich.

Wir erstellen die Daten direkt in R. Kopiere den Code unten und lass ihn laufen.

einkaufen <- c(rep("Coop", 32), rep("Denner", 19), rep("Migros", 19))
ernaehrung <- c(rep("Allesfresser", 17), rep("Veganer", 6), rep("Vegetarier", 9),
                rep("Allesfresser", 8), rep("Veganer", 7), rep("Vegetarier", 4),
                rep("Allesfresser", 4), rep("Veganer", 7), rep("Vegetarier", 8))
cbind(einkaufen, ernaehrung)
##       einkaufen ernaehrung    
##  [1,] "Coop"    "Allesfresser"
##  [2,] "Coop"    "Allesfresser"
##  [3,] "Coop"    "Allesfresser"
##  [4,] "Coop"    "Allesfresser"
##  [5,] "Coop"    "Allesfresser"
##  [6,] "Coop"    "Allesfresser"
##  [7,] "Coop"    "Allesfresser"
##  [8,] "Coop"    "Allesfresser"
##  [9,] "Coop"    "Allesfresser"
## [10,] "Coop"    "Allesfresser"
## [11,] "Coop"    "Allesfresser"
## [12,] "Coop"    "Allesfresser"
## [13,] "Coop"    "Allesfresser"
## [14,] "Coop"    "Allesfresser"
## [15,] "Coop"    "Allesfresser"
## [16,] "Coop"    "Allesfresser"
## [17,] "Coop"    "Allesfresser"
## [18,] "Coop"    "Veganer"     
## [19,] "Coop"    "Veganer"     
## [20,] "Coop"    "Veganer"     
## [21,] "Coop"    "Veganer"     
## [22,] "Coop"    "Veganer"     
## [23,] "Coop"    "Veganer"     
## [24,] "Coop"    "Vegetarier"  
## [25,] "Coop"    "Vegetarier"  
## [26,] "Coop"    "Vegetarier"  
## [27,] "Coop"    "Vegetarier"  
## [28,] "Coop"    "Vegetarier"  
## [29,] "Coop"    "Vegetarier"  
## [30,] "Coop"    "Vegetarier"  
## [31,] "Coop"    "Vegetarier"  
## [32,] "Coop"    "Vegetarier"  
## [33,] "Denner"  "Allesfresser"
## [34,] "Denner"  "Allesfresser"
## [35,] "Denner"  "Allesfresser"
## [36,] "Denner"  "Allesfresser"
## [37,] "Denner"  "Allesfresser"
## [38,] "Denner"  "Allesfresser"
## [39,] "Denner"  "Allesfresser"
## [40,] "Denner"  "Allesfresser"
## [41,] "Denner"  "Veganer"     
## [42,] "Denner"  "Veganer"     
## [43,] "Denner"  "Veganer"     
## [44,] "Denner"  "Veganer"     
## [45,] "Denner"  "Veganer"     
## [46,] "Denner"  "Veganer"     
## [47,] "Denner"  "Veganer"     
## [48,] "Denner"  "Vegetarier"  
## [49,] "Denner"  "Vegetarier"  
## [50,] "Denner"  "Vegetarier"  
## [51,] "Denner"  "Vegetarier"  
## [52,] "Migros"  "Allesfresser"
## [53,] "Migros"  "Allesfresser"
## [54,] "Migros"  "Allesfresser"
## [55,] "Migros"  "Allesfresser"
## [56,] "Migros"  "Veganer"     
## [57,] "Migros"  "Veganer"     
## [58,] "Migros"  "Veganer"     
## [59,] "Migros"  "Veganer"     
## [60,] "Migros"  "Veganer"     
## [61,] "Migros"  "Veganer"     
## [62,] "Migros"  "Veganer"     
## [63,] "Migros"  "Vegetarier"  
## [64,] "Migros"  "Vegetarier"  
## [65,] "Migros"  "Vegetarier"  
## [66,] "Migros"  "Vegetarier"  
## [67,] "Migros"  "Vegetarier"  
## [68,] "Migros"  "Vegetarier"  
## [69,] "Migros"  "Vegetarier"  
## [70,] "Migros"  "Vegetarier"

Aufgaben

  1. Erstelle die k x m Tabelle. Die “Ernährung” repräsentiert die Zeilen. Lass dir die beobachteten Häufigkeiten anzeigen.
  2. Lass dir die erwarteten Häufigkeiten anzeigen (du brauchst dafür die chisq.test() Funktion).
  3. Untersuche mit dem Chi-squared Test, ob sich die beobachteten Häufigkeiten von den beobachteten Häufigkeiten unterscheiden.
  4. Interpretiere das Resultat des Tests.
  5. Bei welchen beobachteten Häufigkeiten gab es die grösste Abweichung von den der erwarteten Häufigkeit? Lass dir die Residuen anzeigen, um diese Frage zu beantworten.

Lösungen

  1. Erstelle die k x m Tabelle. Die “Ernährung” repräsentiert die Zeilen. Lass dir die beobachteten Häufigkeiten anzeigen.
my_km_table <- table(ernaehrung, einkaufen)
my_km_table
##               einkaufen
## ernaehrung     Coop Denner Migros
##   Allesfresser   17      8      4
##   Veganer         6      7      7
##   Vegetarier      9      4      8

  1. Lass dir die erwarteten Häufigkeiten anzeigen (du brauchst dafür die chisq.test() Funktion)
chisq.test(my_km_table)$expected
##               einkaufen
## ernaehrung          Coop   Denner   Migros
##   Allesfresser 13.257143 7.871429 7.871429
##   Veganer       9.142857 5.428571 5.428571
##   Vegetarier    9.600000 5.700000 5.700000

Die erwarteten Häufigkeiten entsprechen \(H_{0}\)


  1. Untersuche mit dem Chi-squared Test, ob sich die beobachteten Häufigkeiten von den beobachteten Häufigkeiten unterscheiden.
chisq.test(my_km_table)
## 
##  Pearson's Chi-squared test
## 
## data:  my_km_table
## X-squared = 6.4256, df = 4, p-value = 0.1695

  1. Interpretiere das Resultat des Tests.

Der p-Wert ist 16.95%. Die Wahrscheinlichkeit für die Differenz (oder eine extremere) zwischen den erwarteten und beobachteten Häufigkeiten, wenn \(H_{0}\) wahr ist, beträgt 16.95%. Somit gibt es keine starke Evidenz gegen \(H_{0}\). N ist grösser als 40 und es haben weniger als 20% der Zellen eine erwartete Häufigkeit von <5. Somit sind die Voraussetzungen für einen Chi-squared Test erfüllt.


  1. Bei welchen beobachteten Häufigkeiten gab es die grösste Abweichung von den der erwarteten Häufigkeit? Lass dir die Residuen anzeigen, um diese Frage zu beantworten.
chisq.test(my_km_table)$residuals
##               einkaufen
## ernaehrung            Coop      Denner      Migros
##   Allesfresser  1.02796489  0.04582661 -1.37989001
##   Veganer      -1.03940230  0.67445327  0.67445327
##   Vegetarier   -0.19364917 -0.71205164  0.96336399

Das grösste Residuum findet sich in der Zelle “Allesfresser”/“Migros”. Dieses ist negativ was bedeutet, dass die beobachtete Häufigkeit für diese Kombination tiefer ist, als erwartet. Diese Differenz ist jedoch statistisch nicht signifikant.