Začněte nyníZačněte zdarma

Bootstrapový test hypotézy pro počty spermií včelích samců

Nyní otestuješ následující hypotézu: Samci včel ošetření neonikotinoidním insekticidem mají v průměru stejný počet aktivních spermií na mililitr semene jako neošetření samci. Jako testovou statistiku použiješ rozdíl průměrů.

Pro připomenutí, volací signatura funkce draw_bs_reps(), kterou jsi napsal/a ve 2. kapitole, je draw_bs_reps(data, func, size=1).

Toto cvičení je součástí kurzu

Statistical Thinking in Python (Part 2)

Zobrazit kurz

Pokyny k cvičení

  • Vypočítej průměrný počet aktivních spermií pro control mínus průměr pro treated.
  • Vypočítej průměr všech počtů aktivních spermií. Nejdřív zkombinuj control a treated a vezmi průměr sloučeného pole.
  • Vytvoř posunuté datové sady pro control i treated tak, aby měly stejný průměr. Tento krok je již hotový za tebe.
  • Pro každé ze dvou posunutých polí vygeneruj 10 000 bootstrapových replikátů průměru pomocí funkce draw_bs_reps().
  • Vypočítej bootstrapové replikáty rozdílu průměrů.
  • Kód pro výpočet a výpis p-hodnoty je již napsaný. Spusť kód a podívej se na výsledek!

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Compute the difference in mean sperm count: diff_means
diff_means = ____

# Compute mean of pooled data: mean_count
mean_count = ____

# Generate shifted data sets
control_shifted = control - np.mean(control) + mean_count
treated_shifted = treated - np.mean(treated) + mean_count

# Generate bootstrap replicates
bs_reps_control = ____(____,
                       np.mean, size=10000)
bs_reps_treated = ____(____,
                       np.mean, size=10000)

# Get replicates of difference of means: bs_replicates
bs_replicates = ____

# Compute and print p-value: p
p = np.sum(bs_replicates >= np.mean(control) - np.mean(treated)) \
            / len(bs_replicates)
print('p-value =', p)
Upravit a spustit kód