W. Timischl: Angewandte Statistik EINSTICHPROBENVERGLEICHE 1 1. In einer Studie wurde u.a. das Ges. Eiweiß i.S. am Beginn und am Ende bestimmt. Bei 31 Probanden war eine Veränderung zu beobachten: bei 20 Probanden lag der Eiweißwert vorher im Normbereich und nachher außerhalb des Normbereichs lag, bei 11 Probanden lag der Eiweißwert vorher außerhalb und nachher im Normbereich. a) Weicht der Anteil y der Probanden, bei denen der Eiweißwert vorher außerhalb und nachher innerhalb des Normbereichs liegt, signifikant von 0,5 ab? Als Signifikanzniveau sei = 5% vereinbart. b) Ist der Versuch so geplant, dass die beobachtete Abweichung |y-0,5| mit 90%iger Sicherheit mit dem Test als signifikant zu erkennen wäre? Lösung mit EXCEL: a) Prüfung auf signifikante Abweichung Daten: n= 30 Anzahl der Probanden m= 11 Anzahl der Probanden mit "vorher außerhalb" und "nachher im" y=m/n= 0,367 Anteil der Probanden mit "vorher außerhalb" und "nachher im" Hypothesen: p = Wahrscheinlichkeit einer Veränderung von "vorher außerhalb" nach "nachher im" H0: p = p0 H1: p <> p0 p0 = 0,5 alpha = 5% Prüfung der Voraussetzungen für Normalverteilungsapproximation: n > 20 np0 = 15,0 >= 10 <= n-10 Testgröße: Entscheidung: TGs= -1,461 |TGs| = 1,461 <= H0 kann nicht abgelehnt werden! b) Mindesstichprobenumfang Delta= 0,133 alpha= 5% Power= 90% z(1-alpha/2)= z(Power)= n_mindest= 1,960 = z(1-alpha/2) 1,960 1,282 147,76 n nicht ausreichend groß geplant! 2,4 Lösung mit R: a) Prüfung auf Abweichung > n <- 30 # Anzahl der Probanden > m <- 11 # Anzahl der Probanden mit Änderung von „vorher außerhalb“ in „nachher im“ > y <- m/n # Anteil der Probanden mit Änderung von „vorher außerhalb“ in „nachher im“ > p0 <- 0.5 # Sollwert > alpha <- 0.05 # Testniveau > > # Variante 1: Normalverteilungsapproximation (n < 20, 10 <= np0 <= n-10) > se <- sqrt(p0*(1-p0)/n) # Standardfehler der rel. Häufigkeit > tgs <- (y-p0)/se # Testgröße > z_vergleich <- qnorm(1-alpha/2, mean=0, sd=1) # (1-alpha/2)-Quantil der N(0,1)-Verteilung > print(cbind(tgs, z_vergleich)) 68635360 15.05.2016 W. Timischl: Angewandte Statistik EINSTICHPROBENVERGLEICHE 2 tgs z_vergleich [1,] -1.460593 1.959964 # Entscheidung: |TGs| <= z(1-alpha/2) H0 kann nicht abgelehnt werden! > # Alternative zur Entscheidung mit Quantil: Berechnung des p-values > p_value <- 2*pnorm(tgs, mean=0, sd=1) > print(p_value) [1] 0.1441270 > # Entscheidung: p_value >= alpha H0 kann nicht abgelehnt werden! > > # Variante 2: Berechnung mit der R-Funktion prop.test (ohne Kontinuitätskorrektur) > > prop.test(m, n, p=p0, alternative="two.sided", correct=FALSE) 1-sample proportions test without continuity correction data: m out of n, null probability p0 X-squared = 2.1333, df = 1, p-value = 0.1441 alternative hypothesis: true p is not equal to 0.5 95 percent confidence interval: 0.2187392 0.5448644 sample estimates: p 0.3666667 > # Variante 3: Berechnung mit der R-Funktion binom.test (exakter Test) > binom.test(m, n, p=p0, alternative="two.sided", conf.level=0.95) Exact binomial test data: m and n number of successes = 11, number of trials = 30, p-value = 0.2005 alternative hypothesis: true probability of success is not equal to 0.5 95 percent confidence interval: 0.1992986 0.5614402 sample estimates: probability of success 0.3666667 b) Mindest-n > # Grobe Approximation > delta <- abs(y-p0) > power <- 0.9 > z1 <- qnorm(1-alpha/2, mean=0, sd=1) > z2 <- qnorm(power, mean=0, sd=1) > n_mindest <- 1/4/delta^2*(z1+z2)^2 > n_mindest [1] 147.7606 > # Erforderliches Mindest-n: n = 148! 2. Die Messung der Ozonkonzentration während der Sommermonate ergab für eine Großstadt die in der folgenden Tabelle enthaltenen Werte (Angaben in 10-2 ppm). a) Liegt die mittlere Ozonkonzentration signifikant über dem Wert o =5? ( = 5%) b) Welcher Mindeststichprobenumfang müsste geplant werden, um mit dem Test eine Überschreitung von o um 10% mit einer Sicherheit von 90% erkennen zu können? ( = 5%) 2,5 3,0 5,6 4,7 6,5 68635360 6,7 1,7 5,3 4,6 7,4 5,4 4,1 5,1 5,6 5,4 6,1 7,6 6,2 6,0 5,5 5,8 8,2 3,1 5,8 2,6 15.05.2016 W. Timischl: Angewandte Statistik EINSTICHPROBENVERGLEICHE 3 Lösung mit EXCEL: Modell: X = Ozonkonzentration ist normalverteilt mit Mittwelrt und Standardabweichung Daten: Kennwerte: 2,5 3 5,6 4,7 6,5 6,7 1,7 5,3 4,6 7,4 n= Mittelwert= STD= 25 5,22 1,6404 Hypothesen: H0: H1: alpha = 5 5% Testgröße: TGs= 0,671 Entscheidung: TGs = 0,671 H0 kann nicht abgelehnt werden! Alternative: Berechnung des P-Werts p_value= 0,254446 H0 kann nicht abgelehnt werden! b) Mindesstichprobenumfang Delta= 0,500 alpha= 5% Power= 90% 5,4 4,1 5,1 5,6 5,4 6,1 7,6 6,2 6 5,5 <= >= 5,8 8,2 3,1 5,8 2,6 1,711 = t(n-1, 1-alpha) alpha z(1-alpha)= z(Power)= 1,645 1,282 n_mindest= 92,18 n nicht ausreichend groß geplant! Lösung mit R: > ozon <- c(2.5, 3.0, 5.6, 4.7, 6.5, 6.7, 1.7, 5.3, 4.6, 7.4, + 5.4, 4.1, 5.1, 5.6, 5.4, 6.1, 7.6, 6.2, 6.0, 5.5, + 5.8, 8.2, 3.1, 5.8, 2.6) > n <- length(ozon) # Stichprobenumfang > mw <- mean(ozon) # Stichprobenmittelwert > std <- sd(ozon) # Stichproben-STD > print(cbind(n, mw, std)) n mw std [1,] 25 5.22 1.640376 > alpha <- 0.05 # Testniveau > m0 <- 5 # Sollwert > > Variante 1: direkte Berechnung der Testgröße > se <- std/sqrt(n) # Standardfehler des Stichprobenmittels > tgs <- (mw - m0)/se # Testgröße > t_vergleich <- qt(1-alpha, n-1) # (1-alpha)-Quantil der t(n-1)-Verteilung > print(cbind(tgs, t_vergleich)) 68635360 15.05.2016 W. Timischl: Angewandte Statistik EINSTICHPROBENVERGLEICHE 4 tgs t_vergleich [1,] 0.670578 1.710882 > # Entscheidung: TGs <= t(n-1, 1-alpha) H0 kann nicht abgelehnt werden! > # Alternative zur Entscheidung mit Quantil: Berechnung des p-values > p_value <- 1 - pt(tgs, n-1) > p_value [1] 0.2544458 > # Entscheidung: p_value >= alpha H0 kann nicht abgelehnt werden! > > # Variante 2: Berechnung mit der R-Funktion t.test > t.test(ozon, alternative="greater", mu=m0, conf.level=0.95) One Sample t-test data: ozon t = 0.6706, df = 24, p-value = 0.2544 alternative hypothesis: true mean is greater than 5 95 percent confidence interval: 4.658702 Inf sample estimates: mean of x 5.22 b) Mindest-n > delta <- 0.1*m0 > alpha <- 0.05 > power <- 0.9 > > # Alternative 1: Grobe Approximation > z_1 <- qnorm(1-alpha) > z_2 <- qnorm(power) > n_mindest <- (std/delta)^2*(z_1 + z_2)^2 > print(n_mindest) [1] 92.17554 > # Erforderliches Mindest-n: n = 93! > > # Alternative 2: Berechnung mit R-Funktion power.t.test > power.t.test(n = NULL, delta = delta, sd = std, sig.level = 0.05, + power = 0.9, type = "one.sample", + alternative = "one.sided") One-sample t test power calculation n = 93.54509 delta = 0.5 sd = 1.640376 sig.level = 0.05 power = 0.9 alternative = one.sided > # Erforderliches Mindest-n: n = 94! 68635360 15.05.2016