Einen Kommentar schreiben

Erfolgsmessung im Marketing - Folge 29: Die für einen Signifikanztest erforderliche Gruppengröße (Power-Analyse, Teil 1)

In Folge 21 habe ich im Rahmen eines A/B-Tests zwei Gruppen gebildet, bestehend aus jeweils elf Leads. Mein Signifikanztest legte nahe, den bei meinem A/B-Test gefundenen Unterschied zwischen den beiden Gruppenmittelwerten als zufallsbedingt anzusehen (p-Wert gleich 0,387). In Folge 26 - vier Gruppen mit jeweils 35 Leads - legten meine p-Werte ebenfalls nahe, Kausalität zu verneinen.

Ein solches Ergebnis kann zweierlei bedeuten:

1. Möglichkeit: Der Unterschied zwischen den Gruppenmittelwerten ist in Wirklichkeit nur zufallsbedingt und die Nullhypothese H0 daher richtig. Der p-Wert (0,387) führt in diesem Fall zur richtigen Entscheidung (H0 ist richtig und wird beibehalten).

2. Möglichkeit: Der Unterschied zwischen den Gruppenmittelwerten ist in Wirklichkeit systematisch und die Nullhypothese H0 daher falsch. Der p-Wert (0,387) führt in diesem Fall zur falschen Entscheidung (H0 ist falsch und wird beibehalten).

Welche dieser beiden Möglichkeiten trifft zu? Eine Antwort auf diese Frage erhalten Sie, wenn Sie sich mich mit der Güte von Signifikanztests beschäftigen, mit der Testpower.

Ich mache hierzu anhand eines Beispiels eine numerische Power-Analyse (Computersimulation), deren Grundprinzip ich im folgenden Abschnitt erläutere. Danach zeige ich für mein Beispiel, wie Sie die für einen A/B-Test erforderliche Gruppengröße abschätzen können und welche Bedeutung hierbei der vermuteten Effektstärke zukommt.

Power-Analyse - Grundprinzip

Die Power eines Signifikanztests ist die Wahrscheinlichkeit dafür, dass der Signifikanztest zu einer Ablehnung der Nullhypothese führt, wenn die Nullhypothese falsch ist.

Bei einem Mittelwertvergleich lautet die Nullhypothese H0: »Beide Mittelwerte sind gleich«. Wenn H0 falsch ist, dann bedeutet dies, dass zwischen den beiden Gruppenmittelwerten ein signifikanter Unterschied besteht. Ein Signifikanztest sollte in diesem Fall zur Ablehnung von H0 führen (p-Wert < 0,05). Die Wahrscheinlichkeit für ein solches Ergebnis ist daher ein Maß für die Güte des Signifikanztests.

Eine Power-Analyse zielt darauf ab, die Testpower in Abhängigkeit von der Gruppengröße oder von anderen Parametern zu schätzen. Die hierfür infrage kommenden Methoden sind entweder analytisch (mit mathematischen Formeln) oder numerisch (per Computersimulation).

Für den numerischen Ansatz spricht:

  • Der numerische Ansatz ist einfacher und leichter zu verstehen als der analytische
  • Der numerische Ansatz ist universell anwendbar, der analytische Ansatz nicht

Sie können den numerischen Ansatz auch für komplexe Designs nutzen, zum Beispiel für Strukturgleichungsmodelle mit sehr vielen Gleichungen.

Als Ausgangspunkt für eine Power-Analyse dient eine bestimmte Vermutung, zum Beispiel die Vermutung, die durchschnittliche Konversionsrate würde von derzeit 50 Prozent auf 55 Prozent steigen, wenn die Besucher einer Landing-Page zusätzliches Informationsmaterial erhielten.

Ich würde in diesem Fall einen A/B-Test durchführen, bei dem die Testgruppe das zusätzliche Informationsmaterial erhält und die Kontrollgruppe nicht. Anschließend würde ich anhand eines Signifikanztests die durchschnittlichen Konversionsraten der beiden Gruppen vergleichen.

Der Sinn des Signifikanztests besteht in diesem Fall darin, meine Vermutung zu erhärten (p-Wert < 0,05 wünschenswert). Hierbei ist die Testpower wichtig, weil ich einen p-Wert < 0,05 als Beleg dafür deuten will, dass die Nullhypothese H0 falsch ist.

Wie groß wäre die Power meines Signifikanztests, wenn beide Gruppen aus jeweils 50 Leads bestehen und meine Vermutung richtig ist?

Der Lösungsansatz besteht darin, das Verhalten der Leads zu modellieren und am Computer zu simulieren:

1. Das Verhalten der Leads

Für einen der Testgruppe zugewiesenen Besucher unterstelle ich - im Einklang mit meiner Vermutung - eine Konversionswahrscheinlichkeit von 55 Prozent. Das Verhalten (Konversion ja oder nein) einer 50 Besucher umfassenden Testgruppe kann ich daher mit Hilfe einer binomialverteilten Zufallsvariablen modellieren:

vTG <- rbinom(50,1,0.55)

Der Vektor vTG enthält 50 Zahlen, nur Einsen und Nullen. Jede dieser Zahlen ist eine Realisation einer binomialverteilten Zufallsvariablen mit der Wahrscheinlichkeit 0,55 für den Wert 1 und 0,45 für den Wert 0.

Ich modelliere das Verhalten einer 50 Besucher umfassenden Kontrollgruppe nach dem gleichen Prinzip, jetzt mit der Wahrscheinlichkeit 0,5 für den Wert 1 und 0,5 für den Wert 0:

vKG <- rbinom(50,1,0.5)

2. Die Computersimulation

Ich erzeuge tausendmal meine Zufallszahlen vTG und vKG, mache jeweils einen Signifikanztest und berechne den Anteil der Fälle, in denen die falsche Nullhypothese H0 abgelehnt wird:

library(DAAG)
n <- 50
nsim <- 1000
korrekt <- 0
for (i in 1:nsim) {
 vTG <- rbinom(n,1,0.55)
 vKG <- rbinom(n,1,0.5)
 if (twotPermutation(vTG,vKG,plotit=FALSE)<=0.05)
     korrekt <- korrekt+1
}
korrekt/nsim

Der Anteil der Signifikanztests mit einem p-Wert kleiner oder gleich 0,05 beträgt 0,053 (53 von 1000 Permutationstests führen zur richtigen Entscheidung). Dies ist der Schätzwert für die Power meines geplanten Signifikanztests mit jeweils 50 Leads pro Gruppe.

Ich habe mich bei meiner Simulation mit nsim = 1.000 Durchgängen begnügt. Würde ich die Simulation mit der gleichen Zahl von Durchgängen wiederholen, so hätte ich voraussichtlich ein von meinem Schätzwert 0,053 deutlich abweichendes Ergebnis. Das ist hier aber egal, weil es keinen wesentlichen Unterschied macht, ob ich als Schätzwert 0,053 erhalte oder zum Beispiel den dreifachen Wert. Beides wäre viel zu wenig.

Als wünschenswert gilt eine Power in Höhe von 0,8 oder größer.

Einzelheiten zu den für meine Daten verwendeten Permutationstests finden Sie in Folge 21 und Folge 22 meiner Serie Erfolgsmessung im Marketing.

Inhaltlich bedeutet das Ergebnis meiner Computersimulation:

Der geplante A/B-Test wäre mit jeweils n = 50 Leads pro Gruppe unbrauchbar. Ich müsste bei dieser Gruppengröße wegen der sehr niedrigen Testpower (0,053) damit rechnen, dass mein Signifikanztest einen p-Wert größer als 0,05 liefern wird, was auf die Annahme der vermutlich falschen Nullhypothese hinauslaufen würde.

Ich brauche für meinen A/B-Test wesentlich größere Vergleichsgruppen.

Die erforderliche Gruppengröße

Ich will jetzt für mein Beispiel abschätzen, wie groß die beiden Vergleichsgruppen sein müssten, um eine Power in Höhe von 0,8 zu erhalten. Hierzu probiere ich zunächst, in welcher Größenordnung der n-Wert liegen muss.

Ich merke schnell, dass beide Gruppen für die gewünschte Power eine vierstellige Zahl von Leads umfassen müssen. Aus diesem Grund mache ich eine grobe Power-Schätzung mit nsim = 100 Durchgängen für n = 1.000, 1.250, 1.500, 1.750 und 2.000 Leads.

library(DAAG)
nsim <- 100
n <- seq(1000,2000,by=250)
korrekt <- rep(0,length(n))
for (j in 1:length(n)) {
 m <- n[j]
 for (i in 1:nsim) {
  vTG <- rbinom(m,1,0.55)
  vKG <- rbinom(m,1,0.5)
  if (twotPermutation(vTG,vKG,plotit=FALSE)<=0.05)
  korrekt[j] <- korrekt[j]+1
  }
}
korrekt/nsim

Ergebnisse:

  • 0,58 für n = 1.000
  • 0,63 für n = 1.250
  • 0,76 für n = 1.500
  • 0,82 für n = 1.750
  • 0,85 für n = 2.000

Die fünf Schätzwerte sind wegen der wenigen Durchgänge (nsim = 100) nur grobe Anhaltspunkte. Man sieht aber, dass die erforderliche Mindest-Gruppengröße bei mindestens n = 1.500 liegt.

Ich untersuche dies etwas genauer, mit nsim = 1.000 Durchgängen:

library(DAAG)
n <- 1500
nsim <- 1000
korrekt <- 0
for (i in 1:nsim) {
 vTG <- rbinom(n,1,0.55)
 vKG <- rbinom(n,1,0.5)
 if (twotPermutation(vTG,vKG,plotit=FALSE)<=0.05)
 korrekt <- korrekt+1
}
korrekt/nsim

Ich erhalte auf diese Weise einen Schätzwert in Höhe von ungefähr 0,8 für die Power meines geplanten Signifikanztests.

Konsequenz:

Für den Nachweis der vermuteten Mittelwertdifferenz (0,55 gegenüber 0,5) mit einem A/B-Test und einem anschließenden Signifikanztest mit Power = 0,8 und Irrtumswahrscheinlichkeit = 0,05 bräuchte ich für beide Vergleichsgruppen jeweils n = 1.500 Leads.

Relativ geringe Wirkungen (hier: Anhebung des Mittelwerts von 0,5 auf 0,55) sind demnach schwer nachzuweisen (Datenbasis muss groß genug sein).

Bei hinreichender Power (≥ 0,8) würde ein p-Wert ≥ 0,05 darauf hindeuten, dass zwischen den beiden Gruppenmittelwerten in Wirklichkeit kein signifikanter Unterschied besteht und ich daher mit meiner Vermutung falsch liege.

Bei unzureichender Testpower müsste ich damit rechnen, die Nullhypothese H0 zu Unrecht anzunehmen.

Die Bedeutung der vermuteten Effektstärke

Ausgangspunkt meines A/B-Tests und der hiermit zusammenhängenden Power-Analyse war die Vermutung, dass zusätzliches Informationsmaterial die durchschnittliche Konversionsrate von derzeit 50 auf 55 Prozent erhöhen würde. Der Sinn des A/B-Tests bestand darin, diese Vermutung zu erhärten. Der Power-Analyse diente hierbei zur Qualitätssicherung (die Testgruppe und die Kontrollgruppe müssen hinreichend groß sein).

In vielen Fällen wird die Größe der beiden Vergleichsgruppen von vornherein begrenzt sein, zum Beispiel weil die Anzahl der in einem Monat neu gewonnenen Leads relativ gering ist. Mit 100 neuen Leads pro Monat wäre ein A/B-Test mit n = 1.500 Leads pro Gruppe illusorisch.

Was können Sie im Rahmen eines A/B-Tests mit kleinen Vergleichsgruppen erreichen?

Ich untersuche diese Frage, indem ich eine bestimmte Gruppengröße vorgebe und die vermutete Effektstärke variiere.

Für Leads aus der Kontrollgruppe bleibt alles wie bisher: Leads aus dieser Gruppe erhalten kein zusätzliches Informationsmaterial, was erfahrungsgemäß auf eine durchschnittliche Konversionsrate von 50 Prozent hinausläuft (rechte Spalte der folgenden Tabelle).

Für die Testgruppe, die zusätzliches Informationsmaterial erhält, berechne ich die Testpower für unterschiedliche Vermutungen über die Effektstärke. Die erste Zeile der folgenden Tabelle steht für die Vermutung, dass zusätzliches Informationsmaterial die durchschnittliche Konversionsrate von 50 auf 65 Prozent erhöht.

Testgruppe Kontrollgruppe
0,65 0,5
0,7 0,5
0,75 0,5
0,8 0,5

Ich mache die Power-Schätzung für n = 50 Leads pro Gruppe:

library(DAAG)
nsim <- 100
n <- 50
mwTG <- seq(0.65,0.8, by=0.05)
korrekt <- rep(0,length(mwTG))
for (j in 1:length(mwTG)) {
 mw <- mwTG[j]
 for (i in 1:nsim) {
  vTG <- rbinom(n,1,mw)
  vKG <- rbinom(n,1,0.5)
  if (twotPermutation(vTG,vKG,plotit=FALSE)<=0.05)
  korrekt[j] <- korrekt[j]+1
  }
}
korrekt/nsim

Meine Ergebnisse (nsim = 100 Durchgänge) sehen Sie in der rechten Spalte:

Testgruppe Kontrollgruppe Geschätzte Power
0,65 0,5 0,27
0,7 0,5 0,44
0,75 0,5 0,72
0,8 0,5 0,84

Ich untersuche die letzten beiden Fälle genauer, mit nsim = 1.000 Durchgängen:

library(DAAG)
nsim <- 1000
n <- 50
mwTG <- c(0.75,0.8)
korrekt <- rep(0,length(mwTG))
for (j in 1:length(mwTG)) {
 mw <- mwTG[j]
 for (i in 1:nsim) {
  vTG <- rbinom(n,1,mw)
  vKG <- rbinom(n,1,0.5)
  if (twotPermutation(vTG,vKG,plotit=FALSE)<=0.05)
  korrekt[j] <- korrekt[j]+1
  }
}
korrekt/nsim

Meine Ergebnisse sehen Sie wieder in der rechten Spalte:

Testgruppe Kontrollgruppe Geschätzte Power
0,75 0,5 0,687
0,8 0,5 0,841

Mit n = 50 Leads pro Gruppe erhalte ich die gewünschte Power (≥ 0,8), wenn ich für die Testgruppe eine um ungefähr 60 Prozent höhere durchschnittliche Konversionsrate vermute als für die Kontrollgruppe (0,8 / 0,5).

Kleine Vergleichsgruppen können demnach ausreichend sein, wenn Sie einen sehr großen Effekt nachweisen wollen.

Kategorie: 
Thesaurus: