Statistik für Ingenieure Vorlesung 13 Prof. Dr. Hans-Jörg Starkloff TU Bergakademie Freiberg Institut für Stochastik 30. Januar 2017 5.1.3. Tests für zwei oder mehr (unabhängige) Stichproben (stetige Skala) I Von besonderer Bedeutung sind statistische Tests bezüglich der Lageparameter für die (unabhängigen) Zufallsgrößen X , Y bei zwei Stichproben bzw. X1 , . . . , Xk bei mehreren Stichproben. I Um derartige Tests anwenden zu können, müssen im Allgemeinen vorher Annahmen über die Verteilungen der Einzelzufallsgrößen und teilweise auch über die Gleichheit der Varianzen überprüft werden. I Es können wieder spezielle Tests verwendet werden, falls die Merkmalszufallsgrößen normalverteilt sind. I Im Fall von nichtnormalverteilten Zufallsgrößen können oft rangbasierte (sogenannte verteilungsfreie) Tests verwendet werden. Diese können auch für normalverteilte Daten verwendet werden, sind dann aber nicht so effektiv wie die speziellen Tests. Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 2 a) Anpassungstests für mehrere Stichproben (stetige Skala) I Statistische Tests über die Verteilung werden in dieser Situation oft so durchgeführt, dass für jede beteiligte reelle Stichprobe ein geeigneter Anpassungstest durchgeführt wird. I Damit können beim Test auf Normalverteilung zwei (bzw. k) einzelne Shapiro-Wilk-Tests für X und Y im Zweistichprobenfall (bzw. X1 , . . . , Xk im k−Stichprobenfall) durchgeführt werden. I Analog können für andere Verteilungen zwei (bzw. k) einzelne χ2 −Anpassungstests oder Kolmogorow-Smirnow-Tests durchgeführt werden. I Da bei der Durchführung mehrerer Tests, die nur zusammen eine Gesamtaussage erlauben, eine vorgegebene Wahrscheinlichkeit für einen Fehler 1. Art für die Gesamtaussage nicht mit dem entsprechenden Niveau der einzelnen beteiligten Tests übereinstimmt, sollte man in einer solchen Situation die sogenannte Bonferroni-Methode oder Bonferroni-Korrektur anwenden. Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 3 b) Bonferroni-Methode oder Bonferroni-Korrektur I Angenommen eine Hypothese setzt sich aus k Einzelhypothesen wie folgt zusammen: H0 : H01 ∩ . . . ∩ H0k , I H1 : H11 ∪ . . . ∪ H1k . Sind z.B. die k Zufallsgrößen X1 , . . . , Xk gegeben, erhält man die Hypothesen H0 : alle k ZG sind normalverteilt , H1 : mind. eine ZG Xi ist nicht normalverteit in obiger Weise aus den Einzelhypothesen H0i : Xi ist normalverteilt , I H1i : Xi ist nicht normalverteilt . Man führt nun k Tests bezüglich der Einzelhypothesen H i durch, und entscheidet dann wie folgt: Man verwirft H0 , wenn mindestens ein Einzeltest die Nullhypothese H0i verwirft, sonst behält man H0 bei. Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 4 Fortsetzung Bonferroni-Korrektur I Führt man die Einzeltest jeweils zum Signifikanzniveau α̃ durch und bezeichne Aj , j = 1, . . . , k, das zufällige Ereignis, dass der j−te Test seine Nullhypothese ablehnt, so gilt unter der Annahme der Unabhängigkeit der Ereignisse Ai und kleinem α̃ : α = P(H0 wird verworfen | H0 wahr) = P(A1 ∪ . . . ∪ Ak | H0 wahr) = 1 − P(A1 c ∩ . . . ∩ Ak c | H0 wahr) = 1 − P(A1 c | H0 wahr) · . . . · P(Ak c | H0 wahr) k 2 k = 1 − (1 − α̃) = 1 − 1 + k α̃ − α̃ + . . . + (−1)k α̃k 2 ≈ k α̃ . I Folglich sollte man als Niveau der Einzeltests α̃ = Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 α wählen. k Geändert: 30. Januar 2017 5 c) F −Test für Varianzen zweier normalverteilter Merkmale I Der F −Test dient zum Vergleich der Varianzen zweier unabhängiger normalverteilter Merkmale mit unbekannten Erwartungswerten. I Geg.: 2 Stichproben x1 , . . . , xn und y1 , . . . , ym (die Stichprobenumfänge können unterschiedlich sein). I Vor.: Die Zufallsgrößen X und Y sind unabhängig und normalverteilt mit (unbekannten) Erwartungswerten µX und µY und Varianzen σX2 und σY2 ; repräsentative Stichproben. I Hyp.: I R-Aufruf: I Ausreißer in den Daten können Probleme bereiten. S2 Die Testgröße ist F = X2 , sie ist unter H0 F −verteilt mit SY (n − 1, m − 1) Freiheitsgraden. Einseitige Tests sind auch möglich. I H0 : σX2 = σY2 , Prof. Dr. Hans-Jörg Starkloff H1 : σX2 6= σY2 (zweiseitiger Test). var.test(,) . Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 6 Bsp. F −Test für Varianzen zweier normalverteilter Merkmale (α = 0.05) I Simulation der Stichproben und Test auf Normalverteilung (mit Bonferroni-Korrektur). I > x=rnorm(30) > y=rnorm(40) > shapiro.test(x) Shapiro-Wilk normality test data: x W = 0.9793, p-value = 0.8056 # >0.05/2, also Annahme > shapiro.test(y) Shapiro-Wilk normality test data: y W = 0.9643, p-value = 0.2345 Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 # >0.05/2, also Annahme Geändert: 30. Januar 2017 7 Fortsetzung Bsp. F −Test I Durchführung F −Test. I > var.test(x,y) F test to compare two variances data: x and y F = 1.166, num df = 29, denom df = 39, p-value = 0.6468 alternative hypothesis: true ratio of variances is not equal to 1 95 percent confidence interval: 0.5943451 2.3701436 sample estimates: ratio of variances 1.166027 Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 8 d) Bartlett-Test für Varianzen von Normalverteilungen I Der Bartlett-Test dient zum Vergleich der Varianzen mehrerer unabhängiger normalverteilter Merkmale. I Geg.: k Stichproben x11 , . . . , x1n1 usw. bis xk1 , . . . , xknk (die Stichprobenumfänge können unterschiedlich sein). I Vor: Die Zufallsgrößen Xi , i = 1, . . . , k sind unabhängig und normalverteilt mit (unbekannten) Erwartungswerten µi und Varianzen σi2 jeweils; repräsentative Stichproben. I Hyp.: H0 : σ12 = . . . = σk2 , Paar (i, j) . I R-Aufruf: I Ausreißer in den Daten können Probleme bereiten. I Der Test ist ein asymptotischer Test, als Faustregel wird ni ≥ 5 , i = 1, . . . , k, empfohlen. I Einseitige Tests sind hier nicht möglich. Prof. Dr. Hans-Jörg Starkloff H1 : σi2 6= σj2 für mindestens ein bartlett.test() . Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 9 Bsp. Bartlett-Test für Varianzen I Simulation der Stichproben und Test auf Normalverteilung (mit Bonferroni-Korrektur). I > > > > x1=rnorm(30) x2=rnorm(30) x3=rnorm(50,mean=1,sd=2) shapiro.test(x1) # N(0,1) # N(0,1) # N(1,4) Shapiro-Wilk normality test data: x1 W = 0.9626, p-value = 0.3611 # >0.05/3, also Annahme > shapiro.test(x2) Shapiro-Wilk normality test data: x2 W = 0.9295, p-value = 0.04753 # >0.05/3, also Annahme > shapiro.test(x3) Shapiro-Wilk normality test data: x3 W = 0.9848, p-value = 0.7649 Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 # >0.05/3, also Annahme Geändert: 30. Januar 2017 10 Fortsetzung Bsp. Bartlett-Test I Durchführung Bartlett-Test. I > bartlett.test(list(x1,x2,x3)) Bartlett test of homogeneity of variances data: list(x1, x2, x3) Bartlett’s K-squared = 22.2336, df = 2, p-value = 1.486e-05 Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 11 e) Fligner-Test für Varianzen stetiger Merkmale I Der Fligner-Test oder Fligner-Killeen-Median-Test dient zum Vergleich der Varianzen mehrerer unabhängiger stetig verteilter Merkmale. I Geg.: k ≥ 2 Stichproben x11 , . . . , x1n1 usw. bis xk1 , . . . , xknk (die Stichprobenumfänge können unterschiedlich sein). I Vor.: Die Zufallsgrößen Xi , i = 1, . . . , k, sind unabhängig und stetig verteilt mit Varianzen σi2 jeweils; repräsentative Stichproben. I Hyp.: H0 : σ12 = . . . = σk2 , Paar (i, j) . I R-Aufruf: I Der Test ist ein rangbasierter Test, so dass Probleme bei Bindungen auftreten könnten. I Einseitige Tests sind hier nicht möglich. Prof. Dr. Hans-Jörg Starkloff H1 : σi2 6= σj2 für mindestens ein fligner.test() . Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 12 Bsp. Fligner-Test für Varianzen stetiger Merkmale I Simulation exponentialverteilter Stichproben (unterschiedliche Varianzen) und Test auf Normalverteilung, um den stärkeren Bartlett-Test auszuschließen. I > > > > x1=rexp(30) x2=1+2*rexp(40) x3=2+3*rexp(50) shapiro.test(x1) # oder x2=1+rexp(40,rate=1/2) # oder x3=2+rexp(40,rate=1/3) Shapiro-Wilk normality test data: x1 W = 0.8881, p-value = 0.004358 I # <0.05/3, also Ablehnung Durchführung Fligner-Test, da die Voraussetzungen für den Bartlett-Test nicht erfüllt sind. I > fligner.test(list(x1,x2,x3)) Fligner-Killeen test of homogeneity of variances data: list(x1, x2, x3) Fligner-Killeen:med chi-squared = 11.2757, df = 2, p-value = 0.003561 Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 13 f) Zwei-Stichproben-t-Test I Mit dem Zwei-Stichproben-t-Test wird die Gleichheit der Erwartungswerte zweier normalverteilter Merkmale mit unbekannter, aber übereinstimmender Varianz überprüft. I Geg.: 2 konkrete Stichproben x1 , . . . , xn und y1 , . . . , ym (die Stichprobenumfänge können unterschiedlich sein). I Vor.: Unabhängige normalverteilte Merkmalszufallsgrößen X und Y mit unbekannten Erwartungswerten µX bzw. µY und unbekannter gleicher Varianz σ 2 ; repräsentative Stichproben. I Hyp.: H0 : µX = µY , H1 : µX 6= µY (zweiseitig) bzw. H1 : µX < µY oder H1 : µX > µY (einseitige Tests) . I R-Aufruf: x und y . I Ausreißer in den Daten können Probleme bereiten. Prof. Dr. Hans-Jörg Starkloff t.test(x,y,var.equal=TRUE) Statistik für Ingenieure Vorlesung 13 bei Datenvektoren Geändert: 30. Januar 2017 14 Bsp. Zwei-Stichproben-t-Test I Simulation unabhängiger normalverteilter Stichproben mit unterschiedlichen Erwartungswerten und Test auf Normalverteilung. I > x=rnorm(30) > y=rnorm(40,mean=1,sd=1) > shapiro.test(x) # N(0,1) # N(1,1) Shapiro-Wilk normality test data: x W = 0.9675, p-value = 0.4737 # >0.05/2, also Annahme > shapiro.test(y) Shapiro-Wilk normality test data: y W = 0.9741, p-value = 0.4809 I # >0.05/2, also Annahme Test auf Gleichheit der Varianzen und Zwei-Stichproben-t-Test. Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 15 Fortsetzung Bsp. Zwei-Stichproben-t-Test I > var.test(x,y) F test to compare two variances data: x and y F = 1.1876, num df = 29, denom df = 39, p-value = 0.6094 # >0.05 alternative hypothesis: true ratio of variances is not equal to 1 95 percent confidence interval: 0.6053333 2.4139626 sample estimates: ratio of variances 1.187585 I > t.test(x,y,var.equal=TRUE) Two Sample t-test data: x and y t = -4.1266, df = 68, p-value = 0.0001026 # Ablehnung alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: -1.5405127 -0.5362612 sample estimates: mean of x mean of y -0.05803432 0.98035260 Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 16 g) Welchs-t-Test I Mit Welchs-t-Test wird die Gleichheit der Erwartungswerte zweier normalverteilter Merkmale mit unbekannten Varianzen überprüft. I Geg.: 2 konkrete Stichproben x1 , . . . , xn und y1 , . . . , ym (die Stichprobenumfänge können unterschiedlich sein). I Vor.: Unabhängige normalverteilte Merkmalszufallsgrößen X und Y mit unbekannten Erwartungswerten µX bzw. µY und unbekannten Varianzen σX2 bzw. σY2 ; repräsentative Stichproben. I Hyp.: H0 : µX = µY , H1 : µX 6= µY (zweiseitig) bzw. H1 : µX < µY oder H1 : µX > µY (einseitige Tests) . I R-Aufruf: t.test(x,y) oder t.test(x,y,var.equal=FALSE) bei Datenvektoren x und y . I Ausreißer in den Daten können Probleme bereiten. I Der Test ist ein asymptotischer Test. Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 17 Bsp. Welchs-t-Test I Simulation unabhängiger normalverteilter Stichproben mit unterschiedlichen Erwartungswerten und Varianzen und Test auf Normalverteilung. I > x=rnorm(30) > y=rnorm(40,mean=1,sd=0.5) > shapiro.test(x) # N(0,1) # N(1,0.25) Shapiro-Wilk normality test data: x W = 0.9627, p-value = 0.3625 # >0.05/2, also Annahme > shapiro.test(y) Shapiro-Wilk normality test data: y W = 0.9774, p-value = 0.5923 I # >0.05/2, also Annahme Test auf Gleichheit der Varianzen und (da Ablehnung) Welchs-t-Test. Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 18 Fortsetzung Bsp. Welchs-t-Test I > var.test(x,y) F test to compare two variances data: x and y F = 4.7789, num df = 29, denom df = 39, p-value = 8.677e-06 # Ablehnung alternative hypothesis: true ratio of variances is not equal to 1 95 percent confidence interval: 2.435876 9.713844 sample estimates: ratio of variances 4.778869 I > t.test(x,y) # oder t.test(x,y,var.equal=FALSE) Welch Two Sample t-test data: x and y t = -4.9802, df = 38.119, p-value = 1.402e-05 # Ablehnung alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: -1.4450751 -0.6098604 sample estimates: mean of x mean of y 0.03109383 1.05856155 Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 19 h) Einfache Varianzanalyse (ANOVA) I Die einfache Varianzanalyse (ANOVA, von ”analysis of variance”) dient zum Test auf Gleichheit der Erwartungswerte mehrerer unabhängiger normalverteilter Merkmale. I Geg.: k Stichproben x11 , . . . , x1n1 usw. bis xk1 , . . . , xknk (die Stichprobenumfänge können unterschiedlich sein). I Vor.: Die Zufallsgrößen Xi , i = 1, . . . , k, sind unabhängig und normalverteilt mit Erwartungswerten µi jeweils und Varianz σ 2 (unbekannt, aber übereinstimmend); repräsentative Stichproben. I Hyp.: H0 : µ1 = . . . = µk , Paar (i, j) . I R-Aufruf: I Der p−Wert kann unter Pr(>F) abgelesen werden. I Ausreißer in den Daten können Probleme bereiten. I Einseitige Tests sind hier nicht möglich. Prof. Dr. Hans-Jörg Starkloff H1 : µi 6= µj für mindestens ein anova() . Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 20 Bsp. Einfache Varianzanalyse I Wir wenden die einfache Varianzanalyse auf die Breite des Kelchblattes (”Sepal.Width”) des Iris-Beispieldatensatzes an. Dabei erhält man 3 unabhängige Stichproben, wenn man dieses Merkmal jeweils für eine der 3 untersuchten Arten beobachtet. I > data(iris) # Laden, dann Tests auf Normalverteilung > shapiro.test(iris$Sepal.Width[1:50]) Shapiro-Wilk normality test data: iris$Sepal.Width[1:50] W = 0.9717, p-value = 0.2715 # >0.05/3, Annahme > shapiro.test(iris$Sepal.Width[51:100]) Shapiro-Wilk normality test data: iris$Sepal.Width[51:100] W = 0.9741, p-value = 0.338 # >0.05/3, Annahme > shapiro.test(iris$Sepal.Width[101:150]) Shapiro-Wilk normality test data: iris$Sepal.Width[101:150] W = 0.9674, p-value = 0.1809 Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 # >0.05/3, Annahme Geändert: 30. Januar 2017 21 Fortsetzung Bsp. Einfache Varianzanalyse I Test auf Gleichheit der Varianzen . I > bartlett.test(Sepal.Width˜Species,data=iris) Bartlett test of homogeneity of variances data: Sepal.Width by Species Bartlett’s K-squared = 2.0911, df = 2, p-value = 0.3515 I # Annahme ANOVA. I > anova(lm(Sepal.Width˜Species,data=iris)) Analysis of Variance Table Response: Sepal.Width Df Sum Sq Mean Sq F value Pr(>F) Species 2 11.345 5.6725 49.16 < 2.2e-16 *** Residuals 147 16.962 0.1154 --Signif. codes: 0 ’***’ 0.001 ’**’ 0.01 ’*’ 0.05 ’.’ 0.1 ’ ’ 1 I Bemerkung: Im anova-Aufruf steht lm() für ”linear model”. Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 22 Parallele Box-Plots zum Anwendungsbeispiel 2.5 3.0 3.5 4.0 > boxplot(Sepal.Width˜Species,data=iris,notch=TRUE) 2.0 ● setosa Prof. Dr. Hans-Jörg Starkloff versicolor virginica Statistik für Ingenieure Vorlesung 13 . Geändert: 30. Januar 2017 23 i) Wilcoxon-Rang-Summen-Test I Mit dem Wilcoxon-Rang-Summen-Test vergleicht man die Lageparameter zweier Merkmale mit stetiger Verteilung miteinander. I Geg.: 2 konkrete Stichproben x1 , . . . , xn und y1 , . . . , ym (die Stichprobenumfänge können unterschiedlich sein). I Vor.: unabhängige stetig verteilte Zufallsgrößen X und Y mit Verteilungsfunktionen FX (x) und FY (x) = FX (x + c) , x ∈ R ; repräsentative Stichproben. I Hyp.: H0 : c = 0 , d.h. FX (x) = FY (x) für alle x ∈ R , H1 : c 6= 0 , d.h. FX (x) = FY (x − c) für alle x ∈ R . I R-Aufruf: I Wird die Nullhypothese abgelehnt, kann man auf unterschiedliche Lageparameter schließen. Auch einseitige Tests sind möglich. I Dieser Test ist ein rangbasierter Test. Bindungen können problematisch sein. Prof. Dr. Hans-Jörg Starkloff wilcox.test(x,y) bei Datenvektoren x und y . Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 24 Bsp. Wilcoxon-Rang-Summen-Test I Simulation unabhängiger exponentialverteilter Beobachtungswerte mit unterschiedlichen Erwartungswerten (Medianen,. . . ), dann Test auf Normalverteilung. I > x=rexp(30) > y=1+rexp(40) > shapiro.test(x) Shapiro-Wilk normality test data: x W = 0.7289, p-value = 4.223e-06 I # keine Normalverteilung Wilcoxon-Rang-Summen-Test. I > wilcox.test(x,y) Wilcoxon rank sum test data: x and y W = 66, p-value = 5.848e-13 # Ablehnung alternative hypothesis: true location shift is not equal to 0 Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 25 j) Kruskal-Wallis-Test I Der Kruskal-Wallis-Test dient zum Vergleich der Lage mehrerer stetiger Merkmale, er verallgemeinert den Wilcoxon-RangSummen-Test. I Geg.: k Stichproben x11 , . . . , x1n1 usw. bis xk1 , . . . , xknk . I Vor.: Die Zufallsgrößen Xi , i = 1, . . . , k, sind unabhängig und stetig verteilt mit Verteilungsfunktionen Fi jeweils, so dass gilt Fi (x) = Fj (x + cij ) für alle x ∈ R mit Konstanten cij ∈ R ; repräsentative Stichproben. I Hyp.: H0 : cij = 0 für alle i 6= j , H1 : cij 6= 0 für mindestens ein Paar (i, j) . I R-Aufruf: I Dieser Test ist ein rangbasierter Test. Bindungen können problematisch sein. Prof. Dr. Hans-Jörg Starkloff kruskal.test() . Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 26 Bsp. Kruskal-Wallis-Test I Simulation exponentialverteilter Stichproben (unterschiedliche Varianzen) und Test auf Normalverteilung, um die ANOVA auszuschließen. I > > > > x1=rexp(30) x2=rexp(40) x3=1+rexp(50) shapiro.test(x1) Shapiro-Wilk normality test data: x1 W = 0.8759, p-value = 0.00227 I # <0.05/3, also Ablehnung Kruskal-Wallis-Test. I > kruskal.test(list(x1,x2,x3)) Kruskal-Wallis rank sum test data: list(x1, x2, x3) Kruskal-Wallis chi-squared = 24.3531, df = 2, p-value = 5.15e-06 Prof. Dr. Hans-Jörg Starkloff Statistik für Ingenieure Vorlesung 13 Geändert: 30. Januar 2017 27