Comment calculer la magnitude d’un vecteur à l’aide de NumPy
La norme d’un vecteur donné, x, est calculée comme suit :
||x|| = √ x 1 2 + x 2 2 + x 3 2 + … + x n 2
Par exemple, supposons que x = [3, 7, 4]
L’ampleur serait calculée comme suit :
||x|| = √ 3 2 + 7 2 + 4 2 = √ 74 = 8,602
Vous pouvez utiliser l’une des deux méthodes suivantes pour calculer la magnitude d’un vecteur à l’aide du package NumPy en Python :
Méthode 1 : utilisez linalg.norm()
np.linalg.norm(v)
Méthode 2 : utiliser les fonctions NumPy personnalisées
np.sqrt(x.dot(x))
Les deux méthodes renverront exactement le même résultat, mais la seconde méthode a tendance à être beaucoup plus rapide, en particulier pour les grands vecteurs.
L’exemple suivant montre comment utiliser chaque méthode dans la pratique.
Méthode 1 : utilisez linalg.norm()
Le code suivant montre comment utiliser la fonction np.linalg.norm() pour calculer l’ampleur d’un vecteur donné :
import numpy as np #define vector x = np.array([3, 6, 6, 4, 8, 12, 13]) #calculate magnitude of vector np.linalg.norm(x) 21.77154105707724
La magnitude du vecteur est 21,77 .
Méthode 2 : utiliser les fonctions NumPy personnalisées
Le code suivant montre comment utiliser les fonctions NumPy personnalisées pour calculer la magnitude d’un vecteur donné :
import numpy as np #define vector x = np.array([3, 6, 6, 4, 8, 12, 13]) #calculate magnitude of vector np.sqrt(x.dot(x)) 21.77154105707724
La magnitude du vecteur est 21,77 .
Notez que cela correspond à la valeur que nous avons calculée à l’aide de la méthode précédente.
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes à l’aide de NumPy :
Comment mapper une fonction sur un tableau NumPy
Comment ajouter une colonne à un tableau NumPy
Comment convertir un tableau NumPy en liste en Python