ÎncepețiÎncepe gratuit

Replici bootstrap ale mediei și SEM

În acest exercițiu, vei calcula o estimare bootstrap a funcției de densitate de probabilitate a precipitațiilor anuale medii la Stația Meteorologică Sheffield. Reamintim că estimăm media precipitațiilor anuale pe care am obține-o dacă Stația Meteorologică Sheffield ar putea repeta toate măsurătorile din perioada 1883–2015 la nesfârșit. Aceasta este o estimare probabilistică a mediei. Vei reprezenta grafic funcția PDF sub formă de histogramă și vei observa că urmează o distribuție Normală.

De altfel, se poate demonstra teoretic că, în condiții destul de generale, valoarea mediei urmează întotdeauna o distribuție Normală. (Acest lucru nu se aplică în general, ci doar pentru medie și câteva alte statistici.) Abaterea standard a acestei distribuții, numită eroarea standard a mediei (SEM), este egală cu abaterea standard a datelor împărțită la rădăcina pătrată a numărului de puncte de date. Cu alte cuvinte, pentru un set de date: sem = np.std(data) / np.sqrt(len(data)). Folosind statistici de tip hacker, obții același rezultat fără a fi nevoie să îl deduci teoretic, însă îl vei verifica pe baza replicilor tale bootstrap.

Setul de date a fost preîncărcat pentru tine într-un array numit rainfall.

Acest exercițiu face parte din cursul

Gândire statistică în Python (Partea 2)

Vezi cursul

Instrucțiuni pentru exercițiu

  • Extrage 10000 replici bootstrap ale mediei precipitațiilor anuale folosind funcția draw_bs_reps() și array-ul rainfall. Indiciu: Transmite np.mean pentru argumentul func, pentru a calcula media.
    • Ca reamintire, draw_bs_reps() acceptă 3 argumente: data, func și size.
  • Calculează și afișează eroarea standard a mediei variabilei rainfall.
    • Formula de calcul este np.std(data) / np.sqrt(len(data)).
  • Calculează și afișează abaterea standard a replicilor tale bootstrap bs_replicates.
  • Realizează o histogramă a replicilor folosind argumentul density=True și 50 de intervale.
  • Apasă „Trimite răspunsul" pentru a vedea graficul!

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# 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()
Editează și rulează codul