Variatie rond de trend
De gegevens hoeven niet perfect lineair te zijn; er kan willekeurige variatie of "spreiding" in de metingen zitten, en dat vertaalt zich in variatie van de modelparameters. Deze variatie in de parameter wordt gekwantificeerd door de "standaardfout" en geïnterpreteerd als de "onzekerheid" in de schatting van de modelparameter.
In deze oefening gebruik je ols uit statsmodels om een model te bouwen en de standaardfout voor elke parameter van dat model op te halen.

Deze oefening maakt deel uit van de cursus
Introductie tot lineaire modellering in Python
Oefeninstructies
- Sla de vooraf geladen data op in een DataFrame
df, waarbij jex_datahet labeltimesgeeft eny_datahet labeldistances. - Gebruik
model_fit = ols().fit()om een lineair model van de vormformula="distances ~ times"te fitten opdata=df. - Haal de geschatte intercept op met
model_fit.params['Intercept']en de standaardfout van de intercept metmodel_fit.bse['Intercept']. - Herhaal dit voor de helling (slope) en print vervolgens alle 4 met duidelijke namen.
Interactieve oefening met praktijkervaring
Probeer deze oefening door deze voorbeeldcode aan te vullen.
# 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(____))