CommencerCommencer gratuitement

Bootstrap et erreur standard

Imaginez un parc national où les gardes parcourent des sentiers chaque jour pour entretenir les pistes. Ils ne suivent pas toujours le même itinéraire, mais ils enregistrent leur distance finale et leur temps. Nous souhaitons construire un modèle statistique des variations de la distance quotidienne parcourue à partir d’un échantillon limité de données d’un seul garde.

Votre objectif est d’utiliser le rééchantillonnage bootstrap, en calculant une moyenne pour chaque rééchantillon, afin de créer une distribution de moyennes, puis de calculer l’erreur standard pour quantifier « l’incertitude » de la statistique d’échantillon en tant qu’estimateur de la statistique de population.

Utilisez le tableau préchargé sample_data de 500 mesures indépendantes de distance parcourue. Pour l’instant, nous utilisons un jeu de données simulé afin de simplifier cette leçon. Plus tard, nous verrons des données plus réalistes.

Cet exercice fait partie du cours

Introduction à la modélisation linéaire en Python

Afficher le cours

Instructions

  • Affectez sample_data comme modèle pour la population.

  • Itérez num_resamples fois :

    • Utilisez np.random.choice() à chaque itération pour générer un bootstrap_sample de size=resample_size prélevé dans population_model en précisant replace=True.
    • Calculez et stockez la moyenne de l’échantillon à chaque fois.
  • Calculez et affichez np.mean() et np.std() de bootstrap_means.

  • Utilisez la fonction prédéfinie plot_data_hist() et visualisez la distribution de bootstrap_means.

Exercice interactif pratique

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

# Use the sample_data as a model for the population
population_model = ____

# Resample the population_model 100 times, computing the mean each sample
for nr in range(num_resamples):
    bootstrap_sample = np.random.____(population_model, size=____, replace=____)
    bootstrap_means[nr] = np.____(bootstrap_sample)

# Compute and print the mean, stdev of the resample distribution of means
distribution_mean = np.mean(____)
standard_error = np.std(____)
print('Bootstrap Distribution: center={:0.1f}, spread={:0.1f}'.format(____, ____))

# Plot the bootstrap resample distribution of means
fig = plot_data_hist(____)
Modifier et exécuter le code