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

Bootstrapové replikáty průměru a SEM

V tomto cvičení vypočítáš bootstrapový odhad hustoty pravděpodobnosti průměrného ročního úhrnu srážek na stanici Sheffield Weather Station. Připomeňme, že odhadujeme průměrný roční úhrn srážek, který bychom dostali, kdybychom mohli všechna měření ze stanice Sheffield Weather Station z let 1883 až 2015 opakovat znovu a znovu. Jde o pravděpodobnostní odhad průměru. Hustotu pravděpodobnosti vykreslíš jako histogram a uvidíš, že má normální rozdělení.

Dá se teoreticky dokázat, že za ne příliš omezujících podmínek má průměr vždy normální rozdělení. (To neplatí obecně – jen pro průměr a několik dalších statistik.) Směrodatná odchylka tohoto rozdělení, označovaná jako střední chyba průměru (SEM), se rovná směrodatné odchylce dat vydělené druhou odmocninou počtu datových bodů. Tedy pro daný dataset: sem = np.std(data) / np.sqrt(len(data)). Pomocí hacker statistics získáš stejný výsledek bez nutnosti ho odvozovat, ale ověříš si ho na svých bootstrapových replikátech.

Dataset je předem načtený v poli rainfall.

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

Statistical Thinking in Python (Part 2)

Zobrazit kurz

Pokyny k cvičení

  • Pomocí funkce draw_bs_reps() a pole rainfall vygeneruj 10000 bootstrapových replikátů průměrného ročního úhrnu srážek. Nápověda: Pro výpočet průměru předej jako func hodnotu np.mean.
    • Připomínáme, že draw_bs_reps() přijímá 3 argumenty: data, func a size.
  • Vypočítej a vypiš střední chybu průměru datasetu rainfall.
    • Použij vzorec np.std(data) / np.sqrt(len(data)).
  • Vypočítej a vypiš směrodatnou odchylku bootstrapových replikátů bs_replicates.
  • Vykresli histogram replikátů s argumentem normed=True a 50 sloupci.
  • Klikni na Submit a podívej se na výsledný graf!

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

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

# Take 10,000 bootstrap replicates of the mean: bs_replicates
bs_replicates = ____

# Compute and print SEM
sem = ____ / np.sqrt(____)
print(sem)

# Compute and print standard deviation of bootstrap replicates
bs_std = ____
print(bs_std)

# Make a histogram of the results
_ = plt.hist(____, ____=50, ____=True)
_ = plt.xlabel('mean annual rainfall (mm)')
_ = plt.ylabel('PDF')

# Show the plot
plt.show()
Upravit a spustit kód