CommencerCommencer gratuitement

Réplicats bootstrap de la moyenne et de la SEM

Dans cet exercice, vous allez calculer une estimation bootstrap de la fonction de densité de probabilité de la moyenne des précipitations annuelles à la station météo de Sheffield. Rappelez-vous : nous estimons la moyenne des précipitations annuelles que l’on obtiendrait si la station pouvait répéter indéfiniment toutes les mesures de 1883 à 2015. Il s’agit d’une estimation probabiliste de la moyenne. Vous tracerez la PDF sous forme d’histogramme, et vous verrez qu’elle est normale.

En fait, on peut montrer théoriquement que, sous des conditions pas trop restrictives, la valeur de la moyenne est toujours distribuée normalement. (Ce n’est pas vrai en général, seulement pour la moyenne et quelques autres statistiques.) L’écart-type de cette distribution, appelé l’erreur standard de la moyenne, ou SEM, est donné par l’écart-type des données divisé par la racine carrée du nombre de points. Autrement dit, pour un jeu de données, sem = np.std(data) / np.sqrt(len(data)). Avec les « hacker stats », vous obtenez ce même résultat sans avoir à le démontrer, mais vous allez le vérifier à partir de vos réplicats bootstrap.

Le jeu de données a été préchargé pour vous dans un tableau appelé rainfall.

Cet exercice fait partie du cours

Réflexion statistique en Python (Partie 2)

Afficher le cours

Instructions

  • Générez 10000 réplicats bootstrap de la moyenne des précipitations annuelles en utilisant votre fonction draw_bs_reps() et le tableau rainfall. Indice : passez np.mean à func pour calculer la moyenne.
    • Pour rappel, draw_bs_reps() accepte 3 arguments : data, func et size.
  • Calculez et affichez l’erreur standard de la moyenne de rainfall.
    • La formule est np.std(data) / np.sqrt(len(data)).
  • Calculez et affichez l’écart-type de vos réplicats bootstrap bs_replicates.
  • Réalisez un histogramme des réplicats en utilisant l’argument normed=True et 50 classes (bins).
  • Cliquez sur Soumettre pour afficher le graphique !

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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()
Modifier et exécuter le code