Comment effectuer l’ajustement des moindres carrés dans NumPy (avec exemple)


La méthode des moindres carrés est une méthode que nous pouvons utiliser pour trouver la droite de régression qui correspond le mieux à un ensemble de données donné.

Nous pouvons utiliser la fonction linalg.lstsq( ) dans NumPy pour effectuer un ajustement par les moindres carrés.

L’exemple suivant, étape par étape, montre comment utiliser cette fonction dans la pratique.

Étape 1 : Entrez les valeurs pour X et Y

Commençons par créer les tableaux NumPy suivants :

import numpy as np

#define x and y arrays
x = np.array([6, 7, 7, 8, 12, 14, 15, 16, 16, 19])

y = np.array([14, 15, 15, 17, 18, 18, 19, 24, 25, 29])

Étape 2 : effectuer l’ajustement par les moindres carrés

Nous pouvons utiliser le code suivant pour effectuer un ajustement par les moindres carrés et trouver la ligne qui « correspond » le mieux aux données :

#perform least squares fitting
np.linalg.lstsq(np.vstack([x, np.ones(len(x))]).T, y, rcond=None)[0]

array([0.96938776, 7.76734694])

Le résultat est un tableau contenant les valeurs de pente et d’origine de la ligne la mieux ajustée.

À partir du résultat, nous pouvons voir :

  • Pente : 0,969
  • Interception : 7,767

En utilisant ces deux valeurs, nous pouvons écrire l’équation de la droite de meilleur ajustement :

ŷ = 7,767 + 0,969x

Étape 3 : Interpréter les résultats

Voici comment interpréter la ligne de meilleur ajustement :

  • Lorsque x est égal à 0, la valeur moyenne de y est 7,767 .
  • Pour chaque augmentation d’une unité de x, y augmente en moyenne de 0,969 .

Nous pouvons également utiliser la droite de meilleur ajustement pour prédire la valeur de y en fonction de la valeur de x.

Par exemple, si x a une valeur de 10 alors nous prédisons que la valeur de y serait 17,457 :

  • ŷ = 7,767 + 0,969x
  • ŷ = 7,767 + 0,969(10)
  • ŷ = 17,457

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans NumPy :

Comment supprimer des éléments spécifiques du tableau NumPy
Comment obtenir l’indice de valeur maximale dans le tableau NumPy
Comment remplir un tableau NumPy avec des valeurs

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *