ÎncepețiÎncepe gratuit

Bootstrap și eroarea standard

Imaginează-ți un parc național unde rangerii fac drumeții zilnice pentru a întreține potecile. Nu parcurg întotdeauna același traseu, însă își înregistrează distanța și timpul final. Dorim să construim un model statistic al variațiilor distanței zilnice parcurse, pornind de la un eșantion limitat de date de la un ranger.

Scopul tău este să folosești reeșantionarea bootstrap – calculând câte o medie pentru fiecare reeșantion – pentru a crea o distribuție de medii, apoi să calculezi eroarea standard ca modalitate de a cuantifica „incertitudinea" din statistica eșantionului ca estimator al statisticii populației.

Folosește array-ul preîncărcat sample_data, care conține 500 de măsurători independente ale distanței parcurse. Deocamdată, folosim un set de date simulat pentru a simplifica lecția. Ulterior, vom lucra cu date mai realiste.

Acest exercițiu face parte din cursul

Introducere în modelarea liniară în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Atribuie sample_data ca model pentru populație.

  • Iterează de num_resamples ori:

    • Folosește np.random.choice() la fiecare iterație pentru a genera un bootstrap_sample de size=resample_size extras din population_model și specifică replace=True.
    • Calculează și stochează media eșantionului la fiecare iterație.
  • Calculează și afișează np.mean() și np.std() ale listei bootstrap_means.

  • Folosește funcția predefinită plot_data_hist() pentru a vizualiza distribuția bootstrap_means.

Exercițiu interactiv practic

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

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