Bootstrapowy test hipotezy
Test permutacyjny opiera się na dość restrykcyjnej hipotezie – że długości sesji u heterozygot i osobników dzikiego typu mają identyczny rozkład. Teraz przeprowadź bootstrapowy test hipotezy, sprawdzając, czy średnie są równe, bez żadnych założeń co do rozkładów.
To ćwiczenie jest częścią kursu
Studia przypadków w myśleniu statystycznym
Instrukcje do ćwiczenia
- Utwórz tablicę
bout_lengths_concatzawierającą wszystkie długości sesji – zarówno dla dzikiego typu (bout_lengths_wt), jak i dla heterozygot (bout_lengths_het) – używającnp.concatenate(). - Oblicz średnią wszystkich długości sesji z tej połączonej tablicy (
bout_lengths_concat) i zapisz wynik w zmiennejmean_bout_length. - Przesuń oba zbiory danych tak, aby miały tę samą średnią, równą
mean_bout_length. Przesunięte tablice zapisz w zmiennychwt_shiftedihet_shifted. - Użyj
dcst.draw_bs_reps(), aby wylosować 10 000 replik bootstrapowych średniej dla każdego z przesuniętych zbiorów danych. Zapisz je odpowiednio wbs_reps_wtibs_reps_het. - Odejmij
bs_reps_wtodbs_reps_het, aby uzyskać repliki bootstrapowe różnicy średnich. Wynik zapisz w zmiennejbs_reps. - Oblicz wartość p, przyjmując, że „co najmniej tak ekstremalna" oznacza, że różnica średnich pod hipotezą zerową jest większa lub równa wartości zaobserwowanej eksperymentalnie. Zmienna
diff_means_expz poprzedniego ćwiczenia jest już dostępna w twoim obszarze nazw.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Concatenate arrays: bout_lengths_concat
bout_lengths_concat = ____((____, ____))
# Compute mean of all bout_lengths: mean_bout_length
mean_bout_length = ____
# Generate shifted arrays
wt_shifted = ____ - np.mean(____) + ____
het_shifted = ____ - ____ + ____
# Compute 10,000 bootstrap replicates from shifted arrays
bs_reps_wt = ____
bs_reps_het = ____
# Get replicates of difference of means: bs_replicates
bs_reps = ____ - ____
# Compute and print p-value: p
p = ____(____ >= ____) / len(____)
print('p-value =', p)