Zacznij terazZacznij za darmo

R-kwadrat

Wcześniej poznałeś inną miarę jakości dopasowania – R-kwadrat – wyrażoną jako stosunek RSS do VAR. Po pomnożeniu licznika i mianownika przez 1/n można go interpretować jako stosunek wariancji reszt do wariancji liniowego trendu w modelowanych danych. Innymi słowy, R-kwadrat mówi, jaka część zmienności danych jest „wyjaśniana" przez model, w porównaniu z rozrzutem reszt (czyli tym, co pozostaje po usunięciu trendu liniowego).

Dane x_data, y_data oraz przewidywania modelu y_model dla najlepszego dopasowania zostały już wczytane. Twoim zadaniem jest obliczenie miary R-kwadrat i sprawdzenie, jak dobrze model liniowy opisuje zmienność danych.

To ćwiczenie jest częścią kursu

Wprowadzenie do modelowania liniowego w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Oblicz residuals (reszty), odejmując y_data od y_model, oraz deviations (odchylenia), odejmując y_data od np.mean() wartości y_data.
  • Oblicz wariancję residuals i wariancję deviations, korzystając z funkcji np.mean() i np.square().
  • Oblicz r_squared jako 1 minus stosunek var_residuals / var_deviations i wyświetl wynik.

Interaktywne ćwiczenie praktyczne

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

# Compute the residuals and the deviations
residuals = ____ - y_data
deviations = np.____(____) - y_data

# Compute the variance of the residuals and deviations
var_residuals = np.____(np.____(____))
var_deviations = np.____(np.____(____))

# Compute r_squared as 1 - the ratio of RSS/Variance
r_squared = 1 - (____ / ____)
print('R-squared is {:0.2f}'.format(____))
Edytuj i uruchom kod