Kom igångKom igång gratis

Bootstraphypotestest på biodronningarnas spermieantal

Nu ska du testa följande hypotes: I genomsnitt har hanbin som behandlats med neonikotinoid-insektsgift samma antal aktiva spermier per milliliter sperma som obehandlade hanbin. Du kommer att använda medelvärdesdifferensen som teststatistika.

Som referens är anropssignaturen för funktionen draw_bs_reps() som du skrev i kapitel 2: draw_bs_reps(data, func, size=1).

Den här övningen är en del av kursen

Statistiskt tänkande i Python (del 2)

Visa kurs

Övningsinstruktioner

  • Beräkna medelvärdet för antalet levande spermier i control minus det i treated.
  • Beräkna medelvärdet för samtliga levande spermieantal. Gör detta genom att först konkatenera control och treated och sedan ta medelvärdet av den konkatenerade arrayen.
  • Generera förskjutna datamängder för både control och treated så att de förskjutna datamängderna har samma medelvärde. Det här steget har redan gjorts åt dig.
  • Generera 10 000 bootstrapreplicat av medelvärdet för var och en av de två förskjutna arrayerna. Använd din funktion draw_bs_reps().
  • Beräkna bootstrapreplikaten av medelvärdesdifferensen.
  • Koden för att beräkna och skriva ut p-värdet har redan skrivits åt dig. Klicka på Skicka in svar för att se resultatet!

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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)
Redigera och kör kod