Power und Stichprobenumfang

Hypothesentests
Effektstärke
Interpretation
R
Python
Wie viele Fälle braucht es, und was findet man mit denen, die man hat?

Kurzsteckbrief

Fragestellung Wie viele Beobachtungen braucht es, um einen Effekt bestimmter Grösse zu finden? Und was lässt sich mit dem vorhandenen Umfang finden?
Eingang drei von vier Grössen: Effektstärke, Stichprobenumfang, Signifikanzniveau, Power
Was die Methode liefert die vierte Grösse
R-Funktion pwr::pwr.t.test(), pwr.anova.test(), pwr.r.test(), pwr.chisq.test()
Python-Funktion statsmodels.stats.power.TTestIndPower() mit .power() und .solve_power()
Verwandte Methoden Effektstärken, Hypothesentests: Grundlagen

Wann diese Methode, wann nicht

Die Powerrechnung gehört vor die Datenerhebung. Sie beantwortet die Frage, ob sich der geplante Versuch überhaupt lohnt: Wer einen mittleren Effekt sucht und zwanzig Fälle je Gruppe erheben kann, wird ihn in zwei von drei Fällen verfehlen, und das lässt sich vorher wissen.

Nach der Datenerhebung ist ihr Nutzen begrenzt und ihre häufigste Anwendung sogar irreführend, siehe Beispiel 3.

Situation Stattdessen
Die Daten liegen bereits vor und waren nicht signifikant das Konfidenzintervall berichten, nicht die nachträgliche Power
Der Umfang steht fest und ist nicht änderbar ausrechnen, welcher Effekt überhaupt findbar wäre, siehe Beispiel 2
Es geht um die Genauigkeit einer Schätzung statt um einen Test Umfang über die gewünschte Intervallbreite planen
Mehrere Tests sind geplant die Korrektur für multiples Testen in die Rechnung aufnehmen

Grundidee und Modell

Vier Grössen hängen zusammen. Legt man drei fest, ergibt sich die vierte:

Grösse Übliche Wahl Bedeutung
Signifikanzniveau \(\alpha\) 0.05 Wahrscheinlichkeit, einen Effekt zu behaupten, den es nicht gibt (Fehler erster Art)
Power \(1-\beta\) 0.80 Wahrscheinlichkeit, einen vorhandenen Effekt zu finden
Effektstärke aus Vorwissen oder Relevanzschwelle wie gross der gesuchte Effekt ist, siehe Effektstärken
Stichprobenumfang \(n\) das Ergebnis

Die Power ist das Gegenstück zum Fehler zweiter Art: \(\beta\) ist die Wahrscheinlichkeit, einen vorhandenen Effekt zu übersehen, und \(1-\beta\) die, ihn zu finden.

Effekt existiert Effekt existiert nicht
Test signifikant richtig, Wahrscheinlichkeit \(1-\beta\) Fehler erster Art, Wahrscheinlichkeit \(\alpha\)
Test nicht signifikant Fehler zweiter Art, Wahrscheinlichkeit \(\beta\) richtig

Die Konvention 0.80 bedeutet, dass ein Fehler zweiter Art viermal so oft hingenommen wird wie einer erster Art. Das ist eine Setzung, keine Notwendigkeit: Wo ein übersehener Effekt teuer ist, gehört die Power höher.

Die wichtigste Zahl in der Rechnung ist die Effektstärke, und sie ist die unsicherste. Sie soll den kleinsten Effekt bezeichnen, den zu finden sich lohnt, nicht den erwarteten. Wer den erwarteten einsetzt und danebenliegt, erhebt zu wenig; wer aus einer kleinen Vorstudie schätzt, übernimmt deren Überschätzung, siehe Effektstärken, Beispiel 3.

Output lesen

R, pwr.t.test():

Grösse Was sie sagt Falle
n Umfang je Gruppe nicht der Gesamtumfang; bei zwei Gruppen verdoppeln
d angenommene Effektstärke die Eingabe, nicht ein Ergebnis
sig.level \(\alpha\) Voreinstellung 0.05
power Trefferwahrscheinlichkeit Voreinstellung, wenn n gesucht wird, ist keine gesetzt; sie muss angegeben werden
alternative ein- oder zweiseitig einseitig senkt den nötigen Umfang und verlangt eine vorab festgelegte Richtung

Python, TTestIndPower:

Aufruf Ergebnis Unterschied zu R
.power(effect_size=, nobs1=, alpha=) Power wie pwr.t.test(n=, d=)
.solve_power(effect_size=, power=, alpha=) nobs1, also n je Gruppe wie pwr.t.test(d=, power=)
ratio= Verhältnis der Gruppengrössen in R über pwr.t2n.test()

Beide geben gebrochene Umfänge aus. Aufgerundet wird immer, nie ab.

Interpretationsfallen

  • Nachträglich berechnete Power ist zirkulär. Sie wird aus dem beobachteten Effekt berechnet und ist deshalb eine Umrechnung des p-Werts, siehe Beispiel 3.
  • Power gilt für den angenommenen Effekt. Ist der wahre Effekt kleiner, ist die tatsächliche Power kleiner.
  • n ist der Umfang je Gruppe. Der häufigste Ablesefehler.
  • Ungleiche Gruppen kosten Power. Bei festem Gesamtumfang ist die Aufteilung 50 zu 50 die beste; 80 zu 20 verliert spürbar.
  • Ausfälle einplanen. Wer 64 je Gruppe braucht und mit 10 Prozent Ausfall rechnet, erhebt 72.
  • Mehrere Tests senken die Power. Eine Bonferroni-Korrektur auf 0.01 statt 0.05 verlangt rund 50 Prozent mehr Fälle.
  • Power ersetzt keine Voraussetzungsprüfung. Sie unterstellt, dass das geplante Verfahren anwendbar ist.

Ergebnis berichten

Der Versuch wurde auf einen Effekt von [Effektstärke] ausgelegt, der als kleinste praktisch bedeutsame Grösse festgelegt wurde. Bei \(\alpha\) = 0.05 zweiseitig und einer Power von [Wert] ergibt sich ein Umfang von [n] je Gruppe; erhoben wurden [tatsächlich] je Gruppe.

Genannt werden: die angenommene Effektstärke und ihre Herkunft, \(\alpha\), die angestrebte Power, das Verfahren, und ob ein- oder zweiseitig geprüft wird. Die Herkunft der Effektstärke ist der Punkt, an dem eine Powerrechnung steht oder fällt.

Abgrenzung zu verwandten Methoden

Methode Wann diese statt der Powerrechnung
Effektstärken die Grösse eines gefundenen Effekts beschreiben
Schätzen und Konfidenzintervalle nach der Erhebung: was ist mit den Daten vereinbar?
Multiples Testen mehrere Tests sind geplant
Äquivalenztest die Frage lautet, ob ein Effekt klein genug ist

Beispiele

Frage und Datenlage

Ein Vergleich zweier Gruppen ist geplant. Als kleinster praktisch bedeutsamer Unterschied wurde ein mittlerer Effekt festgelegt, also \(d = 0.5\). Angestrebt wird eine Power von 0.80 bei \(\alpha\) = 0.05 zweiseitig.

Rechnung

pwr.t.test(d = 0.5, power = 0.80, sig.level = 0.05,
           type = "two.sample", alternative = "two.sided")

     Two-sample t test power calculation 

              n = 63.76561
              d = 0.5
      sig.level = 0.05
          power = 0.8
    alternative = two.sided

NOTE: n is number in *each* group
# Umfang fuer verschiedene Effektstaerken
for (d in c(0.2, 0.3, 0.5, 0.8, 1.0)) {
  n <- pwr.t.test(d = d, power = 0.80, sig.level = 0.05)$n
  cat(sprintf("d = %.1f: %6.2f je Gruppe, aufgerundet %3d, insgesamt %3d\n",
              d, n, ceiling(n), 2 * ceiling(n)))
}
d = 0.2: 393.41 je Gruppe, aufgerundet 394, insgesamt 788
d = 0.3: 175.38 je Gruppe, aufgerundet 176, insgesamt 352
d = 0.5:  63.77 je Gruppe, aufgerundet  64, insgesamt 128
d = 0.8:  25.52 je Gruppe, aufgerundet  26, insgesamt  52
d = 1.0:  16.71 je Gruppe, aufgerundet  17, insgesamt  34
n_noetig = analyse.solve_power(effect_size=0.5, power=0.80, alpha=0.05, ratio=1.0)
print("n je Gruppe für d = 0.5:", round(n_noetig, 3),
      "-> aufgerundet", int(np.ceil(n_noetig)))
n je Gruppe für d = 0.5: 63.766 -> aufgerundet 64
for d in (0.2, 0.3, 0.5, 0.8, 1.0):
    n = analyse.solve_power(effect_size=d, power=0.80, alpha=0.05, ratio=1.0)
    print(f"d = {d}: {n:6.2f} je Gruppe, aufgerundet {int(np.ceil(n)):3d}, "
          f"insgesamt {2*int(np.ceil(n)):3d}")
d = 0.2: 393.41 je Gruppe, aufgerundet 394, insgesamt 788
d = 0.3: 175.38 je Gruppe, aufgerundet 176, insgesamt 352
d = 0.5:  63.77 je Gruppe, aufgerundet  64, insgesamt 128
d = 0.8:  25.52 je Gruppe, aufgerundet  26, insgesamt  52
d = 1.0:  16.71 je Gruppe, aufgerundet  17, insgesamt  34

Output Zeile für Zeile

Effektstärke n je Gruppe (genau) aufgerundet insgesamt
0.2 (klein) 393.41 394 788
0.3 175.38 176 352
0.5 (mittel) 63.77 64 128
0.8 (gross) 25.52 26 52
1.0 16.71 17 34

Die entscheidende Beobachtung: Der Umfang wächst mit dem Quadrat des Kehrwerts der Effektstärke. Ein halb so grosser Effekt braucht viermal so viele Fälle. Von \(d = 0.8\) auf \(d = 0.2\), also ein Viertel der Effektstärke, steigt der Umfang von 26 auf 394 je Gruppe, also auf das Fünfzehnfache.

Das ist der Grund, warum kleine Effekte in der Praxis so schwer nachzuweisen sind, und warum Studien, die kleine Effekte mit kleinen Stichproben finden, skeptisch zu betrachten sind.

Interpretation und Ergebnissatz

Der Versuch wurde auf einen Effekt von \(d\) = 0.5 ausgelegt, der als kleinste praktisch bedeutsame Grösse festgelegt wurde. Bei \(\alpha\) = 0.05 zweiseitig und einer angestrebten Power von 0.80 ergibt sich ein Umfang von 64 Fällen je Gruppe, also 128 insgesamt. Unter Einplanung von 10 Prozent Ausfällen werden 72 je Gruppe erhoben.

Frage und Datenlage

Der Umfang steht fest: zwanzig Fälle je Gruppe, mehr ist nicht zu bekommen. Die Frage dreht sich um: Welche Effekte lassen sich damit überhaupt finden?

Rechnung

umfaenge <- seq(5, 200, by = 5)

par(mar = c(4, 4, 3, 1))
plot(NULL, xlim = range(umfaenge), ylim = c(0, 1),
     xlab = "n je Gruppe", ylab = "Power", main = "Power-Kurven")
abline(h = 0.8, lty = 2, col = "firebrick")
farben <- c("steelblue", "darkorange", "seagreen")
for (i in seq_along(c(0.2, 0.5, 0.8))) {
  d <- c(0.2, 0.5, 0.8)[i]
  werte <- sapply(umfaenge, function(n) pwr.t.test(n = n, d = d,
                                                   sig.level = 0.05)$power)
  lines(umfaenge, werte, col = farben[i], lwd = 2)
}
legend("bottomright", paste("d =", c(0.2, 0.5, 0.8)), col = farben,
       lwd = 2, bty = "n")

for (d in c(0.2, 0.5, 0.8, 1.2)) {
  cat(sprintf("d = %.1f: Power bei n = 20 je Gruppe = %.4f\n",
              d, pwr.t.test(n = 20, d = d, sig.level = 0.05)$power))
}
d = 0.2: Power bei n = 20 je Gruppe = 0.0946
d = 0.5: Power bei n = 20 je Gruppe = 0.3379
d = 0.8: Power bei n = 20 je Gruppe = 0.6934
d = 1.2: Power bei n = 20 je Gruppe = 0.9588
# Welcher Effekt ist mit n = 20 bei Power 0.80 gerade noch findbar?
pwr.t.test(n = 20, power = 0.80, sig.level = 0.05)$d
[1] 0.9091587
Abbildung 1: Beispiel 2: Power in Abhängigkeit vom Umfang, für drei Effektstärken.
umfaenge = np.arange(5, 205, 5)

fig, achse = plt.subplots(figsize=(7, 3.6))
achse.axhline(0.8, linestyle="--", color="firebrick")
for d, farbe in zip((0.2, 0.5, 0.8), ("steelblue", "darkorange", "seagreen")):
    werte = [analyse.power(effect_size=d, nobs1=n, alpha=0.05) for n in umfaenge]
    achse.plot(umfaenge, werte, color=farbe, linewidth=2, label=f"d = {d}")
achse.set_xlabel("n je Gruppe")
achse.set_ylabel("Power")
achse.set_ylim(0, 1)
(0.0, 1.0)
achse.set_title("Power-Kurven")
achse.legend(frameon=False, loc="lower right")
plt.tight_layout()
plt.show()
Abbildung 2: Beispiel 2: dieselben Kurven in Python.
for d in (0.2, 0.5, 0.8, 1.2):
    print(f"d = {d}: Power bei n = 20 je Gruppe = "
          f"{analyse.power(effect_size=d, nobs1=20, alpha=0.05):.4f}")
d = 0.2: Power bei n = 20 je Gruppe = 0.0946
d = 0.5: Power bei n = 20 je Gruppe = 0.3379
d = 0.8: Power bei n = 20 je Gruppe = 0.6934
d = 1.2: Power bei n = 20 je Gruppe = 0.9588
findbar = analyse.solve_power(nobs1=20, power=0.80, alpha=0.05, ratio=1.0)
print("Mit n = 20 bei Power 0.80 findbar ab d =", round(findbar, 4))
Mit n = 20 bei Power 0.80 findbar ab d = 0.9091

Output Zeile für Zeile

Effektstärke Power bei n = 20 je Gruppe Wie das zu lesen ist
0.2 0.095 In neun von zehn Versuchen bleibt ein kleiner Effekt unentdeckt. Die Power liegt kaum über dem Signifikanzniveau von 0.05, also kaum über der Rate falscher Alarme.
0.5 0.338 Ein mittlerer Effekt wird in zwei von drei Versuchen übersehen.
0.8 0.693 Auch ein grosser Effekt bleibt in knapp einem Drittel der Fälle unentdeckt.
1.2 0.959 Erst hier wird der Versuch verlässlich.

Die Kurven zeigen dasselbe grafisch: Für \(d = 0.8\) ist die Schwelle von 0.80 bei rund 26 Fällen je Gruppe erreicht, für \(d = 0.5\) erst bei 64, und für \(d = 0.2\) liegt die Kurve über den ganzen dargestellten Bereich unter 0.55.

Die nützlichste Rechnung bei festem Umfang ist die Umkehrung: Welcher Effekt wäre mit dieser Fallzahl gerade noch findbar? Bei n = 20 je Gruppe und Power 0.80 liegt diese Grenze bei \(d\) = 0.91.

Das ist eine Zahl, mit der sich vorab argumentieren lässt: Wenn der erwartete Effekt deutlich darunter liegt, ist der Versuch in dieser Form nicht aussagekräftig, und die ehrliche Konsequenz ist entweder mehr Daten, ein präziseres Design (etwa gepaart statt ungepaart) oder der Verzicht.

Interpretation und Ergebnissatz

Bei einem festen Umfang von 20 Fällen je Gruppe beträgt die Power für einen mittleren Effekt (\(d\) = 0.5) nur 0.34. Verlässlich findbar (Power 0.80) sind erst Effekte ab \(d\) = 0.91. Der Versuch ist damit nicht geeignet, einen mittleren Effekt nachzuweisen; ein nicht signifikantes Ergebnis wäre nicht als Beleg für dessen Fehlen zu lesen.

Frage und Datenlage

Ein Versuch ist gelaufen und nicht signifikant geworden. Eine verbreitete Reaktion ist, die Power nachträglich aus dem beobachteten Effekt zu berechnen und zu berichten. Was kommt dabei heraus?

Rechnung

# Fuer eine Reihe beobachteter Effekte bei festem n: p-Wert und nachtraegliche
# Power nebeneinander
n <- 20
beobachtet <- c(0.10, 0.30, 0.45, 0.64, 0.90)

tabelle <- data.frame(
  d_beobachtet = beobachtet,
  t = beobachtet * sqrt(n / 2)
)
tabelle$p <- 2 * (1 - pt(tabelle$t, 2 * n - 2))
tabelle$power_nachtraeglich <- sapply(beobachtet, function(d)
  pwr.t.test(n = n, d = d, sig.level = 0.05)$power)
round(tabelle, 4)
  d_beobachtet      t      p power_nachtraeglich
1         0.10 0.3162 0.7536              0.0610
2         0.30 0.9487 0.3488              0.1523
3         0.45 1.4230 0.1629              0.2838
4         0.64 2.0239 0.0501              0.5051
5         0.90 2.8460 0.0071              0.7920
n = 20
beobachtet = np.array([0.10, 0.30, 0.45, 0.64, 0.90])
t = beobachtet * np.sqrt(n / 2)
p = 2 * (1 - stats.t.cdf(t, 2 * n - 2))
power_nach = [analyse.power(effect_size=d, nobs1=n, alpha=0.05)
              for d in beobachtet]

print(pd.DataFrame({"d_beobachtet": beobachtet, "t": t.round(4),
                    "p": p.round(4),
                    "power_nachtraeglich": np.round(power_nach, 4)}))
   d_beobachtet       t       p  power_nachtraeglich
0          0.10  0.3162  0.7536               0.0610
1          0.30  0.9487  0.3488               0.1523
2          0.45  1.4230  0.1629               0.2838
3          0.64  2.0239  0.0501               0.5051
4          0.90  2.8460  0.0071               0.7920

Output Zeile für Zeile

beobachtetes \(d\) t p nachträgliche Power
0.10 0.316 0.754 0.061
0.30 0.949 0.349 0.152
0.45 1.423 0.163 0.284
0.64 2.024 0.050 0.505
0.90 2.846 0.007 0.792

Die beiden letzten Spalten sind dieselbe Information in zwei Schreibweisen. Ein kleiner p-Wert geht immer mit hoher nachträglicher Power einher, ein grosser immer mit niedriger, und der Zusammenhang ist bei festem n eindeutig. Die Zeile mit p = 0.05 hat eine Power von genau 0.50, das gilt allgemein und ist kein Zufall dieses Beispiels: Liegt der beobachtete Effekt genau auf der Signifikanzschwelle, ergibt die nachträgliche Rechnung immer eine Power um 0.5.

Warum die Aussage “die Power war zu niedrig, deshalb nicht signifikant” zirkulär ist. Sie berechnet die Power aus genau dem Effekt, der beobachtet wurde, und stellt dann fest, dass ein kleiner beobachteter Effekt eine kleine Power ergibt. Das ist keine neue Erkenntnis, sondern eine Umformulierung von “der beobachtete Effekt war klein”.

Was stattdessen zu berichten ist: das Konfidenzintervall. Es beantwortet die Frage, die tatsächlich interessiert, nämlich welche Effektgrössen mit den Daten noch vereinbar sind. Ein Intervall von -0.2 bis 1.4 sagt “wir wissen es nicht”, eines von -0.1 bis 0.15 sagt “ein bedeutsamer Effekt ist ausgeschlossen”. Der p-Wert von 0.35 sagt in beiden Fällen dasselbe.

Interpretation und Ergebnissatz

Eine Powerrechnung ist nach der Erhebung nur in einer Form sinnvoll: mit einer vorab oder unabhängig festgelegten Effektstärke, um zu zeigen, dass der Versuch für diese Grösse ausgelegt war. Diese Rechnung hängt nicht vom Ergebnis ab und ist deshalb nicht zirkulär.

Der Versuch war auf \(d\) = 0.5 ausgelegt (Power 0.80 bei 64 je Gruppe); erhoben wurden 20 je Gruppe, was die Power auf 0.34 senkt. Das Ergebnis war nicht signifikant (p = 0.35); das 95-Prozent-Konfidenzintervall der standardisierten Differenz reicht von -0.32 bis 0.92 und lässt damit Effekte bis in den grossen Bereich zu.

Frage und Datenlage

Neben der Effektstärke gibt es drei Stellschrauben, die den Umfang deutlich verändern und in der Planung oft übersehen werden: das Signifikanzniveau, die Aufteilung auf die Gruppen und die Wahl zwischen gepaartem und ungepaartem Design.

Rechnung

cat("Wirkung des Signifikanzniveaus (d = 0.5, Power 0.80):\n")
Wirkung des Signifikanzniveaus (d = 0.5, Power 0.80):
for (a in c(0.10, 0.05, 0.01, 0.001)) {
  n <- pwr.t.test(d = 0.5, power = 0.80, sig.level = a)$n
  cat(sprintf("  alpha = %.3f: %6.2f je Gruppe\n", a, n))
}
  alpha = 0.100:  50.15 je Gruppe
  alpha = 0.050:  63.77 je Gruppe
  alpha = 0.010:  95.10 je Gruppe
  alpha = 0.001: 139.31 je Gruppe
cat("\nWirkung der Aufteilung bei rund 128 Faellen insgesamt (d = 0.5):\n")

Wirkung der Aufteilung bei rund 128 Faellen insgesamt (d = 0.5):
for (paar in list(c(64, 64), c(80, 48), c(96, 32), c(110, 18))) {
  p <- pwr.t2n.test(n1 = paar[1], n2 = paar[2], d = 0.5, sig.level = 0.05)$power
  cat(sprintf("  %3d zu %3d: Power = %.4f\n", paar[1], paar[2], p))
}
   64 zu  64: Power = 0.8015
   80 zu  48: Power = 0.7757
   96 zu  32: Power = 0.6811
  110 zu  18: Power = 0.4967
cat("\nEinseitig statt zweiseitig (d = 0.5, Power 0.80):\n")

Einseitig statt zweiseitig (d = 0.5, Power 0.80):
cat(sprintf("  zweiseitig: %6.2f  einseitig: %6.2f\n",
            pwr.t.test(d = 0.5, power = 0.80, alternative = "two.sided")$n,
            pwr.t.test(d = 0.5, power = 0.80, alternative = "greater")$n))
  zweiseitig:  63.77  einseitig:  50.15
print("Wirkung des Signifikanzniveaus (d = 0.5, Power 0.80):")
Wirkung des Signifikanzniveaus (d = 0.5, Power 0.80):
for a in (0.10, 0.05, 0.01, 0.001):
    n = analyse.solve_power(effect_size=0.5, power=0.80, alpha=a, ratio=1.0)
    print(f"  alpha = {a:.3f}: {n:6.2f} je Gruppe")
  alpha = 0.100:  50.15 je Gruppe
  alpha = 0.050:  63.77 je Gruppe
  alpha = 0.010:  95.10 je Gruppe
  alpha = 0.001: 139.31 je Gruppe
print("\nWirkung der Aufteilung bei rund 128 Fällen insgesamt (d = 0.5):")

Wirkung der Aufteilung bei rund 128 Fällen insgesamt (d = 0.5):
for n1, n2 in [(64, 64), (80, 48), (96, 32), (110, 18)]:
    p = analyse.power(effect_size=0.5, nobs1=n1, alpha=0.05, ratio=n2 / n1)
    print(f"  {n1:3d} zu {n2:3d}: Power = {p:.4f}")
   64 zu  64: Power = 0.8015
   80 zu  48: Power = 0.7757
   96 zu  32: Power = 0.6811
  110 zu  18: Power = 0.4967

Output Zeile für Zeile

Signifikanzniveau. Je strenger, desto mehr Fälle:

\(\alpha\) n je Gruppe Bemerkung
0.10 50.15
0.05 63.77 die Voreinstellung
0.01 95.10 rund 50 Prozent mehr als bei 0.05
0.001 139.31 mehr als das Doppelte

Das ist der versteckte Preis einer Korrektur für multiples Testen: Wer fünf Tests plant und nach Bonferroni auf \(\alpha\) = 0.01 geht, braucht rund die Hälfte mehr Fälle je Test, um dieselbe Power zu halten.

Aufteilung auf die Gruppen. Bei festem Gesamtumfang:

Aufteilung Power Bemerkung
64 zu 64 0.801 das Optimum
80 zu 48 0.776 schon spürbar weniger
96 zu 32 0.681
110 zu 18 0.497 statt 0.80 nur noch 0.50, bei gleichem Gesamtumfang

Die kleinere Gruppe bestimmt die Power fast allein. Eine Kontrollgruppe von 18 Fällen lässt sich nicht dadurch ausgleichen, dass die Behandlungsgruppe auf 110 aufgestockt wird.

Ein- statt zweiseitig senkt den Umfang von 63.77 auf rund 50.15 je Gruppe, also um gut ein Fünftel. Der Preis ist, dass die Richtung vorab festgelegt sein muss und ein Effekt in die andere Richtung nicht nachweisbar wäre, selbst wenn er deutlich ausfiele.

Interpretation und Ergebnissatz

Die grösste Reserve steckt aber nicht in diesen Stellschrauben, sondern im Design. Ein gepaarter Versuch misst dieselbe Person zweimal und entfernt damit die Unterschiede zwischen den Personen aus der Fehlerstreuung. Bei einer Korrelation von 0.8 zwischen den beiden Messungen sinkt der nötige Umfang auf einen Bruchteil.

Deshalb lohnt sich die Frage nach dem Design vor der Frage nach dem Umfang: Fünfzehn Personen, zweimal gemessen, schlagen oft hundert Personen, einmal gemessen.

Geplant war ein Umfang von 64 je Gruppe für \(d\) = 0.5 bei \(\alpha\) = 0.05 und Power 0.80. Wegen der geplanten fünf Vergleiche wurde \(\alpha\) nach Bonferroni auf 0.01 gesenkt, was den Umfang auf 95 je Gruppe erhöht. Die Gruppen werden gleich gross besetzt, da eine ungleiche Aufteilung die Power spürbar senkt.

Verständnisfragen

Ein Versuch mit 20 Fällen je Gruppe ist nicht signifikant geworden. Die nachträglich berechnete Power beträgt 0.28. Was folgt daraus?

Nichts, was der p-Wert nicht schon gesagt hätte
Richtig. Die nachträgliche Power wird aus dem beobachteten Effekt berechnet und ist bei festem n eine eindeutige Umrechnung des p-Werts. Aussagekräftig ist stattdessen das Konfidenzintervall.
Der Versuch war zu klein, deshalb war er nicht signifikant
Der Satz klingt plausibel und ist zirkulär: Er begründet den grossen p-Wert mit einer Zahl, die aus demselben p-Wert stammt.
Es gibt keinen Effekt
Ein nicht signifikantes Ergebnis belegt nie das Fehlen eines Effekts.

Der Umfang für \(d\) = 0.5 beträgt 64 je Gruppe. Wie viele braucht es für \(d\) = 0.25?

Rund viermal so viele, also etwa 250 je Gruppe
Richtig. Der Umfang wächst mit dem Quadrat des Kehrwerts der Effektstärke. Halbierte Effektstärke bedeutet vervierfachten Umfang.
Doppelt so viele, also 128
Der Zusammenhang ist quadratisch, nicht linear.
Dasselbe, der Umfang hängt nur an Power und alpha
Die Effektstärke ist die Grösse, die den Umfang am stärksten bestimmt.

Bei 128 Fällen insgesamt: Welche Aufteilung liefert die höchste Power?

64 zu 64
Richtig. Bei festem Gesamtumfang ist die gleiche Aufteilung optimal. Die kleinere Gruppe bestimmt die Power fast allein; 110 zu 18 erreicht nur 0.50 statt 0.80.
96 zu 32, weil die grössere Gruppe genauer geschätzt wird
Die Genauigkeit der grösseren Gruppe nützt wenig, solange die kleinere die Unsicherheit bestimmt.
Die Aufteilung spielt keine Rolle, nur die Summe zählt
Sie spielt eine erhebliche Rolle, wie die Tabelle in Beispiel 4 zeigt.

Welche Effektstärke gehört in eine Powerrechnung vor der Erhebung?

Der kleinste Effekt, dessen Nachweis sich lohnt
Richtig. Die Powerrechnung soll sicherstellen, dass ein Effekt dieser Grösse gefunden wird. Wer den erwarteten Effekt einsetzt und ihn überschätzt, plant zu klein.
Der in einer Vorstudie beobachtete Effekt
Effektstärken aus kleinen Vorstudien sind systematisch überschätzt und führen zu zu kleinen Umfängen.
Der grösste plausible Effekt
Damit wäre der Versuch für alle kleineren Effekte unterdimensioniert.

Verlinkte Ressourcen