Statistiche di test ed effect size
Come possiamo esplorare le relazioni lineari con il bootstrap resampling? Torniamo sul sentiero! Per ogni escursione tracciata come un punto, si vede che c’è una relazione lineare tra distanza totale percorsa e tempo trascorso. Se consideriamo la distanza percorsa come un “effetto” del tempo trascorso, possiamo allora esplorare il legame tra regressione lineare e inferenza statistica.
In questo esercizio separerai i dati in due popolazioni, o “categorie”: tempi iniziali e tempi finali. Poi osserverai le differenze tra la distanza totale percorsa all’interno di ciascuna popolazione. Questa differenza fungerà da “statistica di test” e la sua distribuzione verificherà l’effetto della separazione delle distanze in base ai tempi.

Questo esercizio fa parte del corso
Introduzione alla modellazione lineare in Python
Istruzioni dell'esercizio
- Usa il "logical indexing" di
numpy, ad esempiosample_distances[sample_times < 5], per separare idistancescampionati nelle popolazioni di tempi iniziali e tempi finali. - Usa
np.random.choice()conreplacement=Trueper creare unresampleper ciascuno dei due intervalli di tempo. - Calcola l’array
test_statisticcomeresample_long - resample_short, quindi trova e stampa effect size e incertezza connp.mean(),np.std(). - Traccia la distribuzione di
test_statisticusando la funzione predefinitafig = plot_test_statistic().
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Create two poulations, sample_distances for early and late sample_times.
# Then resample with replacement, taking 500 random draws from each population.
group_duration_short = sample_distances[____ < 5]
group_duration_long = sample_distances[____ > 5]
resample_short = np.random.choice(____, size=500, replace=____)
resample_long = np.random.choice(____, size=500, replace=____)
# Difference the resamples to compute a test statistic distribution, then compute its mean and stdev
test_statistic = resample_long - resample_short
effect_size = np.mean(____)
standard_error = np.std(____)
# Print and plot the results
print('Test Statistic: mean={:0.2f}, stdev={:0.2f}'.format(____, ____))
fig = plot_test_statistic(____)