Kom igångKom igång gratis

Linjär regressionsalgoritm

För att verkligen förstå linjär regression är det bra att känna till hur algoritmen fungerar. Koden för ols() är hundratals rader lång eftersom den måste fungera med vilken formel och datamängd som helst. Men för enkel linjär regression på en enskild datamängd räcker det med några få kodrader.

Arbetsflödet är:

  • Skriv först en funktion som beräknar kvadratsumman med den här generella syntaxen:
def function_name(args):
  # some calculations with the args
  return outcome
  • Använd sedan scipy:s minimeringsfunktion för att hitta de koefficienter som minimerar den här funktionen.

De förklarande värdena (kolumnen n_convenience i taiwan_real_estate) är tillgängliga som x_actual. Responsvariabelns värden (kolumnen price_twd_msq i taiwan_real_estate) är tillgängliga som y_actual.

minimize() är också inläst.

Den här övningen är en del av kursen

Intermediär regression med statsmodels i Python

Visa kurs

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# 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]))
Redigera och kör kod