Willkommen bei Stats by Randolph. Hier geht es zur Hauptseite mit weiteren Informationen und Inhalten.
Autor:innen dieser Seite: An den Inhalten dieser Seite haben mitgearbeitet: Valentin Koob, Eva Röttger und Markus Janczyk. Der Inhalt dieser Seite wird in der Lehre in den Studiengängen Psychologie von der AG Forschungsmethoden und Kognitive Psychologie an der Universität Bremen verwendet, steht aber allen Interessierten zur Verfügung. Rückmeldungen/Fehler/Vorschläge können gesendet werden an randolph@uni-bremen.
Versionshistory:
Ausgangspunkt unserer Überlgungen in den Teilen 11 und 12 war in der Regel die Annahme, die (spezifische) Nullhypothese würde gelten, und darauf aufbauend haben wir dann die Entscheidungsregeln definiert. Nun gehen wir einen letzten Schritt weiter und betrachten die Situation, wenn eine bestimmte Alternativhypothese gelten würde. Dies haben wir in Teil 11 zwar bereits einmal kurz angedeutet, aber an dortiger Stelle uns primär mit Fehlertypen befasst, die beim Entscheiden auftreten können.
Wir werden diese Fehlertypen hier kurz wiederholen, bevor wir dann Effektstärken und die sog. Power bzw. Teststärke einführen. Dies alles erlaubt uns schließlich die Berechnung einer optimalen Stichprobengröße vor Durchführung einer Studie.
In Teil 11 hatten wir Simulationen betrachtet, bei denen zwei Stichproben entweder aus der gleichen Population (Annahme der Gültigkeit der Nullhypothese \(H_0\)) oder aus verschiedenen Populationen (Annahme der Gültigkeit einer bestimmten Alternativhypothese \(H_1\)) gezogen wurden. Wir haben die relative Häufigkeit der dabei auftretenden Mittelwertdifferenzen \(D=M_A-M_B\) betrachtet.
Der linke Teil der folgenden Abbildung war das Ergebnis, wenn die \(H_0\) angenommen wird. Auf dieser Basis haben wir den kritischen Wert \(D_\text{krit} = 3\) berechnet, der etwa 5% aller auftretenden \(D\)-Werte rechts abschneidet (rote Balken). Solche \(D\)-Werte \(\geq D_\text{krit}\) treten zwar auch unter der \(H_0\)-Annahme auf, aber nur sehr selten. Haben wir in unserer einen Studie allerdings einen solchen Wert erhalten und uns für die \(H_1\) entschieden, obwohl in der Population die \(H_0\) gilt (was wir ja wissen, da wir es in der Simulation so implementiert haben), dann haben wir einen Fehler 1. Art bzw. einen \(\alpha\)-Fehler begangen. Ein \(D\)-Wert kleiner als \(D_\text{krit}\) wäre in diesem Fall eine richtige Entscheidung.
Wir haben am Ende von Teil 11 aber auch bereits eine Simulation angeschaut, in der beide Stichproben aus verschiedenen Populationen (mit einer Differenz von \(\mu_A-\mu_B = 3\)) stammten. Das Ergebnis ist im rechten Teil der folgenden Abbildung dargestellt. Nun sind etwa 25% der Differenzwerte \(D\geq D_\text{krit}\) (die blauen Balken). Deren relative Häufigkeit entspricht (approximativ) also der Wahrscheinlichkeit, bei Gültigkeit der angenommenen Alternativhypothese, ein signifikantes Ergebnis zu erhalten. In diesem Fall würden wir eine richtige Entscheidung treffen. Allerdings können wir selbst dann einen kleinen \(D\)-Wert erhalten (die orangenen Balken) und uns dann für die Beibehaltung der Nullhypothese entscheiden. Diese falsche Entscheidung wäre dann ein Fehler 2. Art oder \(\beta\)-Fehler.
Insgesamt gibt es also vier verschiedene Kombinationen zwischen dem, was tatsächlich in der Population gilt, und wie wir uns aufgrund des Signifikanztests entscheiden:
In der Population gilt die Nullhypothese \(H_0\):
In der Population gilt die Alternativhypothese \(H_1\):
Es ist wichtig zu betonen, dass wir in der realen Situation, in der wir eine einzelne Studie durchgeführt haben, nicht wissen, ob in der Population die \(H_0\) oder die \(H_1\) gilt; gerade deswegen führen wir einen inferenzstatistischen Test durch. Das heißt aber auch: Wir wissen im Einzelfall nie, ob wir eine richtige Entscheidung getroffen haben oder einen Fehler 1. oder 2. Art begangen haben. Allerdings ist die Wahrscheinlichkeit eines Fehler 1. Art kontrolliert, da wir \(\alpha\) vorgeben und typischerweise niedrig ansetzen, z.B. bei \(\alpha = .05\). Den Fehler 2. Art kontrollieren wir allerdings bisher nicht, da uns \(\beta\) nicht bekannt ist. Die Wahrscheinlichkeit \(1-\beta\) ist das, was wir Teststärke bzw. Power nennen und die weiteren Ausführungen in diesem Teil dienen dazu, \(\beta\) bzw. \(1-\beta\) zu berechnen.
Effektstärken sind standardisierte Maße, die “Effekte” über verschiedene Studien hinweg vergleichbar machen sollen. Wir beginnen hier mit:
Es gibt aber sehr viele Effektstärke-Maße mehr (z.B. für die Varianzanalyse in Statistik II) und auch einige Diskussionen darüber, welche Effektstärken in welcher Situation am Besten berechnet werden sollten.
Angenommen, wir vergleichen zwei Gruppen mit einem \(t\)-Test für unabhängige Stichproben. Ein naheliegendes Maß für den (wahren) (Populations-)Effekt (d.h. hier: den Unterschied) wäre dann: \[\text{Effekt}=\mu_A-\mu_B\] Allerdings tritt hierbei ein Problem auf, welches wir bereits von der Kovarianz (Teil 5) kennen. Das Ausmaß der Differenz ist nämlich abhängig von der verwendeten Maßeinheit. Dazu stellen wir uns einfach zwei Studien vor, die an jeweils zwei Gruppen \(A\) und \(B\) die Größe von Versuchspersonen erhoben haben (wir gehen einfach mal davon aus, es waren in beiden Studien die gleichen Versuchspersonen). In der einen Studie wurde dies in Metern gemessen, in der anderen Studie in Zentimetern. Klar ist, dass wir aus der Größe in Metern sehr leicht durch Multiplikation mit 100 die Größe in Zentimetern berechnen können:
A.m <- c(1.8,1.78,1.87,1.67,1.56,1.7) # Gruppe A in Metern
B.m <- c(1.6,1.8,1.5,1.67,1.56,1.7) # Gruppe B in Metern
mean(A.m) - mean(B.m) # Differenz in Metern
## [1] 0.09166667
A.cm <- A.m*100 ; B.cm <- B.m * 100 # in Centimetern: mal 100
mean(A.cm) - mean(B.cm) # Differenz in Centimetern
## [1] 9.166667
Offenbar käme die Studie mit der Messung in Zentimetern zu einem größeren Effekt als die andere Studie. Da es sich um die gleichen Versuchspersonen handelt, ist dies aber natürlich ein unsinniges Ergebnis. Genau wie wir das ähnliche Problem im Falle der Kovarianz gelöst haben (um zur Korrelation überzugehen), gehen wir nun hier vor, und standardisieren die Differenz an der Standardabweichung. Ein geeignetes Maß für die Effektstärke bei Mittelwertunterschieden ist daher \[\delta = \frac{\mu_A-\mu_B}{\sigma}\]
Dass wir so tatsächlich zu gleichen Ergebnissen kommen, illustrieren wir wieder am Beispiel von gerade:
AundB.m <- c(A.m,B.m)
sd.m <- sqrt(mean(AundB.m^2) - (mean(AundB.m)^2)) # SD in Metern
AundB.cm <- c(A.cm,B.cm)
sd.cm <- sqrt(mean(AundB.cm^2) - (mean(AundB.cm)^2)) # SD in Centimetern
(mean(A.m) - mean(B.m))/sd.m # delta in m
## [1] 0.8388641
(mean(A.cm) - mean(B.cm))/sd.cm # delta in cm
## [1] 0.8388641
Allerdings ist \(\delta\) ein Populationsparameter, den wir nicht kennen, sondern schätzen müssen:
Insgesamt wird \(\delta\) also geschätzt durch \[d=\frac{M_A-M_B}{\hat{\sigma}}\] Für uns reicht hier die Unterscheidung unabhängiger und abhängiger Stichproben. Im Fall zweier unabhängiger Stichproben, wird \(\sigma\) geschätzt durch: \[\hat{\sigma}=\sqrt{\frac{(n_A-1)\hat{S}^2_A+(n_B-1)\hat{S}^2_B}{n_A+n_B-2}} =\sqrt{\frac{n_A{S}^2_A+n_B{S}^2_B}{n_A+n_B-2}}\] Im Fall abhängiger Stichproben greifen wir wieder auf eine Differenzvariable \(D\) zurück und \(\sigma\) wird geschätzt durch: \[\hat{\sigma}=\hat{S}_D\] Zwei Anmerkungen zum Fall abhängiger Stichproben:
Das Maß \(d\) ermöglicht also nun eine Vergleichbarkeit verschiedener Studien zum gleichen Thema, unabhängig von deren Stichprobengrößen oder unterschiedlichen Maßeinheiten. Zur besseren Einschätzung gibt es Konventionen von Cohen (1988), was als kleiner, mittlerer oder großer Effekt gilt:
Benutzen wir die Funktion t_out()
aus dem Paket
schoRsch
zur Formatierung der Ergebnisse eines \(t\)-Tests, dann wird \(d\) automatisch berechnet. Am Beispiel
eines \(t\)-Test für zwei unabhängige
Stichproben kann dies dann wie folgt aussehen:
library(schoRsch)
A <- c(8,9,7,5,6,7,8,7) # Gruppe A
B <- c(3,4,6,3,4,5,6,4) # Gruppe B
erg.unabhaengig <- t.test(A, B,
var.equal = TRUE) # t-Test für unabhängige Stichproben
t_out(erg.unabhaengig)
## Test Results
## 1 Two Sample t-test: t(14) = 4.52, p < .001, d = 2.26
Der \(t\)-Test wäre also signifikant und der Effekt ist sehr groß. Ganz ähnlich wird auch bei einem \(t\)-Test für abhängige Stichproben \(d\) berechnet:
library(schoRsch)
A <- c(8,9,7,5,6,7,8,7) # Bedingung A
B <- c(3,4,6,3,4,5,6,4) # Bedingung B
erg.abhaengig <- t.test(A, B,
paired = TRUE) # t-Test für abhängige Stichproben
t_out(erg.abhaengig) # unkorrigiertes d
## Test Results
## 1 Paired t-test: t(7) = 5.23, p = .001, d = 1.85
##
## NOTE: Reporting unadjusted estimate for Cohen's d.
t_out(erg.abhaengig, d.corr = TRUE) # korrigiertes d (*sqrt(2))
## Test Results
## 1 Paired t-test: t(7) = 5.23, p = .001, d = 2.61
##
## NOTE: Reporting adjusted estimate for Cohen's d.
Berechnen wir hier explizit einmal \[\frac{t}{\sqrt{n}}=\frac{5.23}{\sqrt{8}}\] sehen wir, dass dies dem unkorrigierten \(d_z\) entspricht.
erg.abhaengig$statistic/sqrt(length(A)) # zum Vergleich aus t und n berechnet
## t
## 1.848059
Eine ausführliche Darstellung verschiedenster Varianten derartiger Effektstärken findet sich auch in einem Artikel von Goulet-Pelletier und Cosineau (2018).
Das wichtigste Maß für Zusammenhänge ist der Korrelationskoeffizient \(r\), den wir in Teil 5 eingeführt haben. Berechnet wird er, indem die Kovarianz zweier Variablen \(X\) und \(Y\) durch das Produkt ihrer Standardabweichungen dividiert wird, \[r_{XY}=\frac{\text{Kov}(X,Y)}{S_X\cdot S_Y},\] wodurch bewirkt wird, dass \(r_{XY}\) nur zwischen \(-1\) und \(1\) variieren kann. Der Korrelationskoeefizient \(r\) ermöglicht also bereits eine Vergleichbarkeit verschiedener Studien zum gleichen Thema, aber mit verschiedenen Stichprobengrößen, verschiedenen Maßeinheiten, … und ist daher bereits ein Maß für die Effektstärke. Auch hier gibt es zur besseren Einschätzung Konventionen von Cohen (1988), was als kleiner, mittlerer oder großer Effekt gilt:
Maße für Effektstärken sind also standardisierte Maße und sie erlauben eine Vergleichbarkeit verschiedener Studien, die sich in Aspekten wie Stichprobengröße und verwendeter Maßeinheit unterscheiden. Zur Beurteilung dessen, was z.B. als “großer Effekt” aufgefasst werden sollte, gibt es die oben erwähten Konventionen von Cohen (1988).
Es sollte aber auch berücksichtigt werden, dass diese Vorschläge durchaus kontrovers diskutiert werden (z.B. Correll et al., 2020) und vor allem es auch zwischen Forschungsgebieten stark variiert, was typische Effektstärken sind (und damit auch was als eher klein oder eher groß aufgefasst werden würde).
Bisher sind wir für die Entwicklung eines Signifikanztests und der Bestimmung der Verteilung von \(\mathbf{t}\) davon ausgegangen, die Nullhypothese würde gelten. Im Fall des \(t\)-Tests bedeutet dies, dass z.B. die zwei Stichproben aus zwei Populationen mit gleichem Erwartungswert \(\mu_A = \mu_B\) stammen (vgl. die Abbildung links). Anders gesagt ist der Effekt in diesem Fall \(\delta = 0.0\) und \(\mathbf{t}\) ist zentral t-verteilt: \[\mathbf{t}\overset{H_0}{\sim}t_m\]
Nun betrachten wir den rechten Teil der Abbildung. In diesem Fall ist der Erwartungswert der Gruppe A \(\mu_A = 0\) und der Erwartungswert der Gruppe B \(\mu_B = 3\). Die zwei Populationen besitzen also verschiedene Erwartungswerte; \(\mu_A \neq \mu_B\). Nehmen wir weiter an, dass die Standardabweichung \(\sigma=1\) ist, können wir auch die Effektstärke \(\delta = 3.0\) berechnen. Mit anderen Worten ist hier eine konkrete Alternativhypothese gültig und wir fragen uns nun, wie \(\mathbf{t}\) in diesem Fall verteilt ist.
Wenn zwei (unabhängige) Stichproben aus Populationen mit verschiedenem Erwartungswert \(\mu\) stammen, also die Alternativhypothese gilt, dann ist die Zufallsvariable \(\mathbf{t}\), die jeder Kombination zweier Stichproben den \(t\)-Bruch zuordnet, nicht mehr zentral \(t\)-verteilt, sondern sie ist dann non-zentral \(t\)-verteilt.
Diese non-zentrale \(t\)-Verteilung
hat (auch) \(m\) Freiheitsgrade, aber
zusätzlich einen Nonzentralitätsparameter \(ncp\), der proportional zum Effekt \(\delta\) in der Population ist. In
Abängigkeit von der benötigten Situation wird der
Nonzentralitätsparameter unterschiedlich berechnet:
\[
\begin{aligned}
ncp&=\delta\cdot \sqrt{\frac{n_A\cdot n_B}{n_A+n_B}}\qquad
&& \text{bei unabhängigen Stichproben}\\
ncp&=\delta\cdot\sqrt{n}\qquad && \text{bei abhängigen/einer
Stichprobe(n)}\\
\end{aligned}
\]
Klar wird allerdings auch, dass bei einem Effekt von \(\delta=0\), auch \(ncp = 0\) gilt. Die folgende Abbildung illustriert drei verschiedene \(t\)-Verteilungen mit jeweils \(m=10\) Freiheitsgraden und verschiedenen Werten für \(ncp\). Die schwarze Kurve mit \(ncp=0\) ist eine zentrale \(t\)-Verteilung. Die rote und grüne Kurve sind nonzentrale \(t\)-Verteilungen. Hier sind drei Eigenschaften auffällig:
Die nun konzeptuell wichtigen relativen Häufigkeiten im Fall unserer Simulationen und dem daraus berechneten Differenzwert \(D\) wiederholen wir hier noch einmal:
Nun betrachten wir eine ähnliche Situation, nur nicht mehr für \(D\), sondern für die Zufallsvariable \(\mathbf{t}\) und deren exakte Verteilung in Form einer zentralen \(t\)-Verteilung (links) und einer nonzentralen \(t\)-Verteilung im Fall der Gültigkeit einer bestimmten Alternativhypothese (rechts; die gestrichelt eingezeichnete Kurve ist die zentrale \(t\)-Verteilung auf Basis derer der kritische \(t\)-Wert bestimmt wurde).
\(t\)-Werte im Bereich der roten Fläche sind auch hier \(\alpha\cdot 100\)% der Fläche ab dem kritischem \(t\)-Wert bei Gültigkeit der Nullhypothese. Gilt in Wahrheit die Nullhypothese und sollten wir einen \(t\)-Wert größer als \(t_{\text{krit}}\) finden, handelt es sich bei der daraus resultierenden Entscheidung um einen Fehler 1. Art. \(t\)-Werte im Bereich der grünen Fläche sind entsprechend hier \((1-\alpha)\cdot 100\)% der Fläche bis zum kritischem \(t\)-Wert bei Gültigkeit der Nullhypothese. Gilt in Wahrheit die Nullhypothese und sollten wir einen \(t\)-Wert kleiner als \(t_{\text{krit}}\) finden, so ist die Entscheidung korrekt.
Wenn eine entsprechende Alternativhypothese allerdings in der Population gelten würde, dann entsprechen \(t\)-Werte im Bereich der orange-farbenen Fläche dem Anteil \(\beta\) bis zum kritischem \(t\)-Wert bei Gültigkeit dieser Alternativhypothese und \(t < t_{\text{krit}}\) wäre dann ein Fehler 2. Art. Entsprechend führen \(t\)-Werte im Bereich der blauen Fläche mit einem Anteil von \(1-\beta\) ab dem kritischem \(t\)-Wert bei Gültigkeit der Alternativhypothese, also \(t\geq t_{\text{krit}}\), zu einer korrekten Entscheidung.
Zusammengefasst wird also der kritische \(t\)-Wert aufgrund des gewähltem \(\alpha\) unter Annahme der Nullhypothese berechnet und zur Entscheidung herangezogen. Die blaue Fläche unter der nonzentralen \(t\)-Verteilung bei einer bestimmten Alternativhypothese (die also einen bestimmten Effekt annimmt) ist dann die Wahrscheinlichkeit, bei Gültigkeit dieser Alternativhypothese, ein signifikantes Ergebnis zu erhalten, d.h. \(t\geq t_{\text{krit}}\) zu erhalten. Dies ist die Power oder Teststärke und für sie wird auch \(1-\beta\) geschrieben. Die maximale Wahrscheinlichkeit eines Fehlers 2. Art ist dann \(\beta\), also die Fläche unter der nonzentralen \(t\)-Verteilung bis zu \(t_{\text{krit}}\).
In den Worten von Cohen (1988, S. 4): “The power of a statistical test of a null hypothesis is the probability that it will lead to the rejection of the null hypothesis, i.e., the probability that it will result in the conclusion that the phenomenon exists.”
Unter Verwendung der Effektstärke \(\delta\) in der Population können wir nun eine spezifische Alternativhypothese formulieren:
Eine spezifische Alternativhypothese für einen bestimmten Wert von \(\delta\) geht wiederum einher mit einer bestimmten nonzentralen \(t\)-Verteilung, und dies wiederum erlaubt die Berechnung der Power \(1-\beta\) und der maximalen Wahrscheinlichkeit \(\beta\) eines Fehlers 2. Art. Das Problem dabei ist nun, dass wir \(\delta\) nicht kennen. Um uns einer möglichen Lösung zu nähern, fragen wir uns daher nun: Welche Faktoren beeinflussen die Power? Eine ShinyApp zum explorieren der im Folgenden aufgeführten Faktoren findet sich hier.
Der erste wichtige Punkt ist die Wahl des Signifikanzniveaus \(\alpha\). Betrachten wir dazu die letzte Abbildung noch einmal, wird schnell klar, dass ein kleinerer Wert für \(\alpha\) zu einem größeren Wert für \(t_\text{krit}\) führt. Dadurch wird, bei gleichem angenommenen Effekt und damit gleicher nonzentraler \(t\)-Verteilung, ein kleinerer Anteil rechts von \(t_\text{krit}\) abgeschnitten, die Power (in blau) wird also kleiner und die maximale Wahrscheinlichkeit für einen Fehler 2. Art (in orange) größer. Diese Situation ist in der folgenden Abbildung für \(\alpha = .01\) illustriert:
Die zweite wichtige Einflussgröße ist die “wahre” Größe des Effektes \(\delta\). Dazu erinnern wir uns, dass der Nonzentralitätsparameter \(ncp\) proportioal zum Effekt \(\delta\) ist. An einer obigen Abbildung hatten wir bereits gesehen, dass bei größerem \(\delta\) und damit größerem \(ncp\) die nonzentrale \(t\)-Verteilung weiter von der Null verschoben ist. Bei gleichbleibendem \(t_{\text{krit}}\) wird dadurch der (blaue) Flächenanteil rechts von \(t_\text{krit}\) größer, d.h. die Power \(1-\beta\) wird größer. Tatsächlich können wir zwar verschiedene Werte für \(\delta\) “annehmen”, beeinflussen können wir die wahre Größe des Populationseffekts aber natürlich nicht.
Die dritte wichtige Einflussgröße ist die Stichprobengröße \(n\). Zunächst führt eine größere Stichprobe bzw. die damit einhergehende Vergrößerung der Freiheitsgrade der relevanten \(t\)-Verteilung zu einem kleineren Wert für \(t_\text{krit}\). Darüberhinaus geht ein größeres \(n\) in die Formel des \(ncp\) ein und bewirkt dort, dass der \(ncp\) steigt. Ein größerer \(ncp\) bewirkt nun wieder eine höhere Power (vgl. den vorherigen Abschnitt zur Effektstärke). Dies macht auch Sinn, da eine größere Stichprobe zu einer Verkleinerung des Standardfehlers im Nenner des \(t\)-Bruchs führt, sodass wir im Mittel größere \(t\)-Werte erwarten würden. Vergleiche hierzu: \[t=\frac{M_A-M_B}{\sqrt{\frac{(n_A-1)\hat{S}^2_A+(n_B-1)\hat{S}^2_B}{n_A+n_B-2}}\cdot\sqrt{\frac{1}{n_A} +\frac{1}{n_B}}}\] Zwar würde auch eine kleinere Populationsvarianz zu einer eher kleineren Stichprobenvarianz führen und dadurch zu einem kleineren Nenner, allerdings ist die Populationsvarianz nicht beeinflussbar. Was wir aber tatsächlich beeinflussen können ist eben \(n\).
Damit haben wir die Einflussfaktoren erfasst und mit \(n\) eine der wichtigsten Größe erkannt, um die Power eines Tests zu beeinflussen. Nun können wir den Schritt gehen und uns fragen, wie groß eine Stichprobe optimalerweise sein sollte.
Die obige Definition von Power in Form der Wahrscheinlichkeit, ein
signifikantes Ergebnis zu erhalten, bedeutet in einer frequentistischen
Interpretation, dass bei unendlich häufiger Durchführung des
entsprechenden Zufallsexperiments \((1-\beta)\cdot 100\)% der entsprechenden
Signifianztests tatsächlich auch ein signifikantes Ergebnis erzielen
sollten. Wir demonstrieren dies hier am Beispiel eines simulierten \(t\)-Tests für zwei unabhängige Stichproben
und betrachten gleichzeitig, wie sich die Power bei größer werdenden
Stichproben verhält (wir benutzen hier auch bereits die Funktion
power.t.test()
, auf die wir gleich auch noch genauer zu
sprechen kommen):
repetitions <- 1000 # 1000 mal wiederholen pro Stichprobengröße
samplesizes <- c(2,10,20,30,40,50,60,70,80,90,100) # Stichprobengröße n pro Gruppe
delta <- 0.5 # angenommener Populationseffekt
alpha <- 0.05 # angenommener Wert für alpha
# simuliert
sig <- NULL
for (n in samplesizes) { # pro Stichprobegröße...
for (i in c(1:repetitions)) { # ...entsprechend oft wiederholen
sample1 <- rnorm(n,0,1) # Zwei Stichproben ziehen, deren Populationen...
sample2 <- rnorm(n,delta,1) # sich um delta unterscheiden
t.res <- t.test(sample1, sample2, # dann den t-Test berechnen
var.equal = TRUE)
sig <- c(sig,ifelse(t.res$p.value <= alpha,1,0)) # und wenn signifikant, eine 1 an sig
# anhängen, sonst eine 0
}
}
# jetzt eine entsprechende Matrix bauen in deren Zeilen die Ergebnisse der
# t-Tests für jede Stichprobengröße stehen...
SIG <- t(matrix(sig,repetitions,length(samplesizes)))
# ...und dann die relative Häufigkeit signifikanter Ergebnisse als Mittelwerte der...
# ...Zeilen berechnen
percent.sig <- rowMeans(SIG)
# wir berechnen parallel die tatsächliche Power mit der Funktion
# power.t.test() und extrahieren den jeweiligen Wert mit $power
power <- power.t.test(delta = delta, # Effektgröße
n = samplesizes, # Stichprobengrößen
type = "two.sample", # 2 unabhängige Stichproben
sig.level = alpha)$power # alpha-Level
# nun visualisieren wir die tatsächliche Power und den relativen Anteil signifikanter
# Ergebnisse gemeinsam
plot(samplesizes,
percent.sig,
pch = 19,
cex = 1.5,
ylim = c(0,1),
axes = FALSE,
cex.lab = 1.1,
ylab = expression(paste("relative Hfgk. signifikant / ",1-beta)),
xlab = expression(plain("Stichprobengröße")~italic(n)~plain("(pro Gruppe)")))
axis(2)
axis(1,
at = samplesizes,
labels = samplesizes)
abline(h = c(0,1),
lty = c(1,2))
points(samplesizes,
power,
type = "l",
lty = 1.5)
Wie erwartet zeigt sich, dass die Power umso größer wird, je größer die Stichprobe ist. Allerdings ist diese Zunahme offenbar nicht linear: Nach einem zunächst starken Anstieg wird die Zunahme der Power immer geringer und nähert sich schließlich asymptotisch \(1-\beta=1\) an.
Dass dies generell der Fall ist, illustriert die folgende Abbildung noch einmal. Im Fall der linken Abbildung gehen wir von einem \(t\)-Test für zwei unabhängige Stichproben aus, im Fall der rechten von zwei abhängigen Stichproben. Da wir zudem die Situationen für zwei verschiedene Werte von \(\delta\) und \(\alpha\) eingezeichnet haben, können wir auch die oben eingeführten Auswirkungen dieser Werte auf die Power erkennen. Schließlich wird auch noch deutlich, dass die Power im Fall abhängiger Stichproben schneller ansteigt, für jeden Wert von \(n\) also höher ausfällt, als im Fall unabhängiger Stichproben.
Insgeamt gibt es also vier voneinander abhängige Größen:
Da diese alle zusammenhängen, können wir jeweils eine davon bestimmen, wenn wir die anderen drei Größen kennen bzw. einen bestimmten Wert für sie annehmen. Dies machen wir uns nun zunutze, um den sog. optimalen Stichprobenumfang zu berechnen. Die dahinter stehende Frage ist: Ist es sinnvoll, die Stichprobe immer so groß wie möglich zu wählen?
Obwohl die erste intuitive Antwort vermutlich “Ja” ist, gibt es doch einige Argumente, die tatsächlich dagegen sprechen:
Eine sinnvollere Überlegung könnte daher, hier als Beispiel, sein: Wir beginnen damit, dass wir eine bestimmte Effektstärke \(\delta\) in der Population annehmen. Diese Annahme kann aufgrund inhaltlicher Überlegungen geschehen, z.B. dass ausschließlich ein mindestens mittlerer Effekt überhaupt relevant wäre, wir also \(\delta = 0.5\) annehmen. Eine andere Möglichkeit ist, dass wir aufgrund von Vorstudien bzw. Meta-Analysen wissen, dass ein mittlerer Effekt zu erwarten ist. Da wir aufgrund theoretischer Überlegungen wissen, in welcher Population \(\mu\) größer sein sollte, formulieren wir eine gerichtete \(H_1:\mu_A>\mu_B\) und das Verfahren zur Auswertung der Daten wird der \(t\)-Test für unabhängige Stichproben sein.
Nun fehlen noch zwei Größen: Den Fehler 1. Art wollen wir mit \(\alpha = 0.05\) kontrollieren, und wenn es den Effekt mittlerer Größe tatsächlich gibt, dann wollen wir eine Wahrscheinlichkeit von 80% erzielen, diesen auch statistisch aufzudecken, also \(1-\beta=0.8\). Nun können wir eine optimale Stichprobengröße \(n\) bestimmen, die genau diese Eigenschaften erfüllen würde.
Im Beispiel gerade sind die gegebenen Bestimmungsgrößen also:
Gesucht ist die Stichprobengröße \(n\).
Hierfür gibt es mehrere Möglichkeiten. Die eine Möglichkeit besteht darin, die Tabellen im Buch von Cohen (1988) zu konsultieren. Eine weitere Möglichkeit bietet das kostenlose G*Power (Faul et al., 2007), welches hier heruntergeladen werden kann und Power-Analysen für eine Vielzahl statistischer Tests ermöglicht.
Schließlich bietet auch R einiges an Funktionen und Paketen zur
Power-Analyse. Beispielsweise finden Sie hier
eine Shiny-App zur Durchführung einer Power-Analyse im Fall abhängiger
Stichproben (siehe Langenberg et al., 2023). Für unseren Kontext reicht
die Funktion power.t.test()
allerdings völlig aus. Der
folgende Code demonstriert die Funktion an dem gerade eingeführten
Beispiel:
power.t.test(n = NULL, # n soll bestimmt werden
delta = 0.5, sd = 1, # mittlerer Effekt (delta = 0.5/1 = 0.5)
sig.level = 0.05, # alpha = 0.05
power = 0.8, # 1-beta = 0.8
type = "two.sample", # unabhängige Stichproben
alternative = "one.sided") # ungerichtete H1
##
## Two-sample t test power calculation
##
## n = 50.1508
## delta = 0.5
## sd = 1
## sig.level = 0.05
## power = 0.8
## alternative = one.sided
##
## NOTE: n is number in *each* group
Mit diesem Aufruf wird \(n\) bestimmt und aufgerundet ergeben sich \(n=51\) Versuchspersonen pro Gruppe, also insgesamt \(n=102\) Versuchspersonen.
Wir können auch eine umgekehrte Betrachtung durchführen: Wir haben
eine Studie vorliegen, bei der mit \(n=30\) Versuchspersonen pro Gruppe
gearbeitet wurde. Wie groß ist die Power, einen mittleren Effekt
aufzudecken? In diesem Fall lassen wir das power =
Argument
leer:
power.t.test(n = 30, # n pro Gruppe
delta = 0.5, sd = 1, # mittlerer Effekt
sig.level = 0.05, # alpha = 0.05
power = NULL, # Power soll bestimmt werden
type = "two.sample", # unabhängige Stichproben
alternative = "two.sided") # ungerichtete H1
##
## Two-sample t test power calculation
##
## n = 30
## delta = 0.5
## sd = 1
## sig.level = 0.05
## power = 0.477841
## alternative = two.sided
##
## NOTE: n is number in *each* group
Wie wir sehen können, ist bei einer derartigen Konstellation die Power mit \(1-\beta = 0.48\) eher sehr gering.
Wir haben weiter oben gesehen, dass wenn \(\alpha\) kleiner wird, daraus folgt, dass \(\beta\) größer wird (und umgekehrt). Ob in einer Studie es wichtiger ist, dass \(\alpha\) oder \(\beta\) möglichst klein sein soll (z.B. 0.05), ist auch eine inhaltliche Frage. Cohen (1988) hat vorgeschlagen, dass ein Verhältnis von \(\alpha:\beta=1:4\) angestrebt werden sollte, d.h. bei \(\alpha = 0.05\) sollte \(\beta=0.2\) sein bzw. die Power sollte \(1-\beta=0.8\) sein.
Aus den bisherigen Ausführungen sollte klar geworden sein, dass der \(p\)-Wert an sich nichts über die Größe eines Effektes aussagt. Eigentlich ist ein Test entweder signifikant (\(p \leq \alpha\)) oder nicht-signifikant (\(p > \alpha\)). Formulierungen wie “sehr signifikant” erscheinen daher eher sinnfrei.
Dennoch können auch nicht-signifikante Ergebnisse der Forschung weiterhelfen, zumindest dann, wenn die Power der Tests ausreichend hoch war, um den Fehler 2. Art einschätzen zu können: Wenn die Power von vornherein sehr gering war, ist ein nicht-signifikantes Ergebnis sogar zu erwarten und ein solches Ergebnis spricht dann sicherlich auch nicht “für die Nullhypothese”.
Cohen, J. (1988). Statistical power analysis for the behavioral sciences (2nd edn.). Routledge. https://doi.org/10.4324/9780203771587.
Correll, J., Mellinger, C., McClelland, G.H., & Judd, C.M. (2020). Avoid Cohen’s ‘small’, ‘medium’, and ‘large’ for power analysis. Trends in Cognitive Sciences, 24(3), 200–207. https://doi.org/10.1016/j.tics.2019.12.009.
Faul, F., Erdfelder, E., Lang, A.-G., & Buchner, A. (2007). G*Power 3: A flexible statistical power analysis program for the social, behavioral, and biomedical sciences. Behavior Research Methods, 39, 175–191. https://doi.org/10.3758/BF03193146
Goulet-Pelletier, J.-C., & Cousineau, D. (2018). A review of effect sizes and their confidence intervals, Part I: The Cohen’s d family. The Quantitative Methods for Psychology, 14(4), 242-265. https://doi.org/10.20982/tqmp.14.4.p242
Langenberg, B., Janczyk, M., Koob, V., Kliegl, R., & Mayer, A. (2023). A tutorial on using the paired t-test for power calculations in repeated measures ANOVA with interactions. Behavior Research Methods, 55, 2467–2484 https://doi.org/10.3758/s13428-022-01902-8.