Variation autour de la tendance
Les données n'ont pas besoin d'être parfaitement linéaires, et il peut y avoir une certaine variation aléatoire ou une « dispersion » dans les mesures, ce qui se traduit par une variation des paramètres du modèle. Cette variation d'un paramètre est quantifiée par l'« erreur type » et elle s'interprète comme l'« incertitude » sur l'estimation du paramètre du modèle.
Dans cet exercice, vous utiliserez ols de statsmodels pour construire un modèle et extraire l'erreur type pour chacun des paramètres de ce modèle.

Cette activité fait partie du cours
Introduction aux modèles linéaires en Python
Instructions de l’exercice
- Placez les données préchargées dans un DataFrame
df, en renommantx_dataentimesety_dataendistances. - Utilisez
model_fit = ols().fit()pour ajuster un modèle linéaire de la formeformula="distances ~ times"auxdata=df. - Extrayez l'ordonnée à l'origine estimée avec
model_fit.params['Intercept']et l'erreur type de l'ordonnée à l'origine avecmodel_fit.bse['Intercept']. - Répétez pour la pente, puis affichez les 4 valeurs avec des noms explicites.
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
# Store x_data and y_data, as times and distances, in df, and use ols() to fit a model to it.
df = pd.DataFrame(dict(____=x_data, ____=y_data))
model_fit = ols(____="distances ~ times", data=____).____()
# Extact the model parameters and their uncertainties
a0 = model_fit.____['Intercept']
e0 = model_fit.____['Intercept']
a1 = model_fit.____['times']
e1 = model_fit.____['times']
# Print the results with more meaningful names
print('Estimate of the intercept = {:0.2f}'.format(____))
print('Uncertainty of the intercept = {:0.2f}'.format(____))
print('Estimate of the slope = {:0.2f}'.format(____))
print('Uncertainty of the slope = {:0.2f}'.format(____))