IniziaInizia gratis

Bootstrap replicates della media e del SEM

In questo esercizio calcolerai una stima bootstrap della funzione di densità di probabilità della media delle precipitazioni annuali alla Sheffield Weather Station. Ricorda: stiamo stimando la media delle precipitazioni annuali che otterremmo se la Sheffield Weather Station potesse ripetere tutte le misurazioni dal 1883 al 2015 all'infinito. Si tratta di una stima probabilistica della media. Traccerai la PDF come un istogramma e vedrai che è Normale.

In effetti, si può dimostrare teoricamente che, in condizioni non troppo restrittive, il valore della media è sempre distribuito normalmente. (Questo non vale in generale, solo per la media e poche altre statistiche.) La deviazione standard di questa distribuzione, detta errore standard della media o SEM, è data dalla deviazione standard dei dati divisa per la radice quadrata del numero di punti. Cioè, per un insieme di dati, sem = np.std(data) / np.sqrt(len(data)). Con le hacker statistics ottieni lo stesso risultato senza doverlo derivare, e lo verificherai usando i tuoi bootstrap replicates.

Il dataset è stato pre-caricato per te in un array chiamato rainfall.

Questo esercizio fa parte del corso

Pensiero statistico in Python (Parte 2)

Visualizza il corso

Istruzioni dell'esercizio

  • Genera 10000 bootstrap replicates della media delle precipitazioni annuali usando la tua funzione draw_bs_reps() e l'array rainfall. Suggerimento: passa np.mean come func per calcolare la media.
    • Promemoria: draw_bs_reps() accetta 3 argomenti: data, func e size.
  • Calcola e stampa l'errore standard della media di rainfall.
    • La formula è np.std(data) / np.sqrt(len(data)).
  • Calcola e stampa la deviazione standard dei tuoi bootstrap replicates bs_replicates.
  • Crea un istogramma dei replicates usando l'argomento normed=True e 50 bin.
  • Premi Invia risposta per vedere il grafico!

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# 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()
Modifica ed esegui il codice