Zacznij terazZacznij za darmo

Zmienność wokół trendu

Dane nie muszą być idealnie liniowe – w pomiarach może występować pewna losowa zmienność lub „rozrzut", który przekłada się na zmienność parametrów modelu. Ta zmienność jest wyrażana przez „błąd standardowy" i interpretowana jako „niepewność" w szacowaniu parametru modelu.

W tym ćwiczeniu użyjesz funkcji ols z biblioteki statsmodels, aby zbudować model i wyodrębnić błąd standardowy dla każdego z jego parametrów.

To ćwiczenie jest częścią kursu

Wprowadzenie do modelowania liniowego w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Zapisz wstępnie załadowane dane w DataFrame df, nadając kolumnom nazwy: x_datatimes oraz y_datadistances.
  • Użyj model_fit = ols().fit(), aby dopasować model liniowy z formułą formula="distances ~ times" do danych data=df.
  • Wyodrębnij szacowany wyraz wolny model_fit.params['Intercept'] oraz błąd standardowy wyrazu wolnego z model_fit.bse['Intercept'].
  • Powtórz to samo dla nachylenia, a następnie wydrukuj wszystkie 4 wartości z czytelnymi nazwami.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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(____))
Edytuj i uruchom kod