Zacznij terazZacznij za darmo

Algorytm regresji liniowej

Aby naprawdę zrozumieć regresję liniową, warto wiedzieć, jak działa ten algorytm. Kod funkcji ols() liczy setki wierszy, ponieważ musi działać z dowolną formułą i dowolnym zbiorem danych. Jednak w przypadku prostej regresji liniowej dla konkretnego zbioru danych możesz zaimplementować ten algorytm w zaledwie kilku linijkach kodu.

Kolejność kroków jest następująca:

  • Najpierw napisz funkcję obliczającą sumę kwadratów, korzystając z ogólnej składni:
def function_name(args):
  # some calculations with the args
  return outcome
  • Następnie użyj funkcji minimize() z biblioteki scipy, aby znaleźć współczynniki minimalizujące tę funkcję.

Wartości objaśniające (kolumna n_convenience ze zbioru taiwan_real_estate) są dostępne jako x_actual. Wartości zmiennej odpowiedzi (kolumna price_twd_msq ze zbioru taiwan_real_estate) są dostępne jako y_actual.

Funkcja minimize() jest również wczytana.

To ćwiczenie jest częścią kursu

Regresja średnio zaawansowana ze statsmodels w Pythonie

Zobacz kurs

Interaktywne ćwiczenie praktyczne

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

# Complete the function
def calc_sum_of_squares(coeffs):
    # Unpack coeffs
    ____, ____ = ____
    # Calculate predicted y-values
    y_pred = ____ + ____ * ____
    # Calculate differences between y_pred and y_actual
    y_diff = ____ - ____
    # Calculate sum of squares
    sum_sq = ____
    # Return sum of squares
    return sum_sq
  
# Test the function with intercept 10 and slope 1
print(calc_sum_of_squares([10, 1]))
Edytuj i uruchom kod