LoslegenKostenlos starten

Algorithmus für lineare Regression

Um lineare Regression wirklich zu verstehen, hilft es zu wissen, wie der Algorithmus funktioniert. Der Code für ols() umfasst Hunderte von Zeilen, weil er mit jeder Formel und jedem Datensatz funktionieren muss. Für eine einfache lineare Regression auf einem einzelnen Datensatz kannst du den Algorithmus jedoch in nur wenigen Zeilen Code implementieren.

Der Ablauf ist:

  • Schreibe zuerst eine Funktion, die die Quadratsumme berechnet, mit dieser allgemeinen Syntax:
def function_name(args):
  # some calculations with the args
  return outcome
  • Nutze anschließend die Minimierungsfunktion von scipy, um die Koeffizienten zu finden, die diese Funktion minimieren.

Die erklärenden Werte (die Spalte n_convenience in taiwan_real_estate) sind als x_actual verfügbar. Die Zielwerte (die Spalte price_twd_msq in taiwan_real_estate) sind als y_actual verfügbar.

minimize() ist ebenfalls geladen.

Diese Übung ist Teil des Kurses

<Kurs>Fortgeschrittene Regression mit statsmodels in Python</Kurs>
Kurs ansehen

Interaktive praktische Übung

Versuche dich an dieser Übung, indem du diesen Beispielcode vervollständigst.

# 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]))
Code bearbeiten und ausführen