Ein zweiseitiger Bootstrap-Hypothesentest für die Differenz der Mittelwerte
Wir wollen nun die Hypothese testen, dass Frosch A und Frosch B den gleichen mittleren Aufprallimpuls haben, aber nicht unbedingt die gleiche Verteilung, was mit einem Permutationstest ebenfalls nicht möglich ist.
Für den zweiseitigen Bootstrap-Test verschieben wir beide Arrays so, dass sie denselben Mittelwert haben, da wir damit die Hypothese simulieren, dass ihre Mittelwerte tatsächlich gleich sind. Dann ziehen wir Bootstrap-Stichproben aus den verschobenen Arrays und berechnen die Differenz der Mittelwerte. Das ergibt ein Bootstrap-Replikat, und davon erzeugen wir viele. Der p-Wert ist der Anteil der Replikate mit einer Differenz der Mittelwerte, die größer oder gleich der beobachteten ist.
Die Objekte forces_concat und empirical_diff_means sind bereits in deinem Namensraum vorhanden.
Diese Übung ist Teil des Kurses
Statistical Thinking in Python (Teil 2)
Anleitung zur Übung
- Berechne den Mittelwert aller Kräfte (aus
forces_concat) mitnp.mean(). - Erzeuge verschobene Datensätze für sowohl
force_aals auchforce_b, sodass der Mittelwert jedes Arrays dem Mittelwert des zusammengefügten Arrays der Aufprallkräfte entspricht. - Erzeuge jeweils 10.000 Bootstrap-Replikate des Mittelwerts für die beiden verschobenen Arrays.
- Berechne die Bootstrap-Replikate der Differenz der Mittelwerte, indem du die Replikate der verschobenen Aufprallkraft von Frosch B von denen von Frosch A abziehst.
- Berechne und gib den p-Wert aus deinen Bootstrap-Replikaten aus.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Compute mean of all forces: mean_force
mean_force = ____
# Generate shifted arrays
force_a_shifted = force_a - np.mean(force_a) + mean_force
force_b_shifted = ____
# Compute 10,000 bootstrap replicates from shifted arrays
bs_replicates_a = draw_bs_reps(____, ____, ____)
bs_replicates_b = draw_bs_reps(____, ____, ____)
# Get replicates of difference of means: bs_replicates
bs_replicates = ____
# Compute and print p-value: p
p = ____ / ____
print('p-value =', p)