CommencerCommencer gratuitement

Algorithme de régression linéaire

Pour bien comprendre la régression linéaire, il est utile de savoir comment l’algorithme fonctionne. Le code de ols() fait plusieurs centaines de lignes, car il doit gérer n’importe quelle formule et n’importe quel jeu de données. Cependant, pour une régression linéaire simple sur un seul jeu de données, vous pouvez implémenter un algorithme de régression en seulement quelques lignes de code.

Le déroulé est le suivant :

  • D’abord, écrivez une fonction qui calcule la somme des carrés en utilisant cette syntaxe générale :
def function_name(args):
  # some calculations with the args
  return outcome
  • Ensuite, utilisez la fonction de minimisation de scipy pour trouver les coefficients qui minimisent cette fonction.

Les valeurs explicatives (la colonne n_convenience de taiwan_real_estate) sont disponibles sous x_actual. Les valeurs de réponse (la colonne price_twd_msq de taiwan_real_estate) sont disponibles sous y_actual.

minimize() est également importée.

Cet exercice fait partie du cours

Régression intermédiaire avec statsmodels en Python

Afficher le cours

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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]))
Modifier et exécuter le code