Python NumPy numpy.linalg.norm() Fonction
-
Syntaxe de
numpy.linalg.norm()
-
Exemples de codes :
numpy.linalg.norm()
-
Exemples de codes :
numpy.linalg.norm()
pour trouver la norme d’un tableau à deux dimensions -
Codes d’exemple :
numpy.linalg.norm()
pour trouver la norme vectorielle et la norme matricielle en utilisant le paramètreaxis
-
Exemples de codes:
numpy.linalg.norm()
pour utiliser le paramètreord
La fonction Python NumPy numpy.linalg.norm()
trouve la valeur de la norme matricielle ou de la norme vectorielle. Le paramètre ord
décide si la fonction trouvera la norme matricielle ou la norme vectorielle. Il a plusieurs valeurs définies.
Syntaxe de numpy.linalg.norm()
numpy.linalg.norm(x, ord=None, axis=None, keepdims=False)
Paramètres
x |
Il s’agit d’une structure de type tableau. C’est le tableau d’entrée utilisé pour trouver la valeur de la norme. La valeur par défaut du paramètre axis est None , donc le tableau doit être unidimensionnel ou bidimensionnel à condition que ord soit None . |
ord |
La valeur retournée de la fonction dépend de ce paramètre. Il définit l’ordre de la norme. Elle a plusieurs valeurs, voir ici. |
axis |
C’est un entier, aucun ou 2 tuple d’entiers. Si c’est un entier, alors il représente l’axe le long duquel la fonction trouvera la norme vectorielle. Sa valeur par défaut est None , ce qui signifie que la fonction trouvera soit la norme matricielle, soit la norme vectorielle. Si c’est un entier 2 tuple alors la fonction retournera la valeur de la norme matricielle. |
keepdims |
Il s’agit d’un paramètre booléen. Sa valeur par défaut est False . Si sa valeur est True , alors il indique les dimensions de l’axe normalisé avec une taille égale à un. |
Renvoie
Il retourne la norme de la matrice ou d’un vecteur sous la forme d’une valeur float
ou d’un tableau à N dimensions.
Exemples de codes : numpy.linalg.norm()
Nous utiliserons cette fonction pour trouver la norme d’un tableau unidimensionnel.
from numpy import linalg as la
import numpy as np
x = np.array(
[89, 34, 56, 87, 90, 23, 45, 12, 65, 78, 9, 34, 12, 11, 2, 65, 78, 82, 28, 78]
)
norm = la.norm(x)
print("The value of norm is:")
print(norm)
Production:
The value of norm is:
257.4800963181426
Elle a renvoyé une valeur float
qui est la valeur de la norme.
Exemples de codes : numpy.linalg.norm()
pour trouver la norme d’un tableau à deux dimensions
Nous allons maintenant passer un tableau à deux dimensions.
from numpy import linalg as la
import numpy as np
x = np.array([[11, 12, 5], [15, 6, 10], [10, 8, 12], [12, 15, 8], [34, 78, 90]])
norm = la.norm(x)
print("The value of norm is:")
print(norm)
Production:
The value of norm is:
129.35223229616102
Si nous fixons le paramètre ord
à une valeur autre que None
et que nous passons un tableau qui n’est ni unidimensionnel ni bidimensionnel, la fonction va générer une ValueError
puisque le paramètre axis
est None
.
from numpy import linalg as la
import numpy as np
x = np.array([[[4, 2], [6, 4]], [[5, 8], [7, 3]]])
norm = la.norm(x, "nuc")
print("The value of norm is:")
print(norm)
Production:
Traceback (most recent call last):
File "C:\Test\test.py", line 6, in <module>
norm = la.norm(x,'nuc')
File "<__array_function__ internals>", line 5, in norm
File "D:\WinPython\WPy64-3820\python-3.8.2.amd64\lib\site-packages\numpy\linalg\linalg.py", line 2557, in norm
raise ValueError("Improper number of dimensions to norm.")
ValueError: Improper number of dimensions to norm.
Codes d’exemple : numpy.linalg.norm()
pour trouver la norme vectorielle et la norme matricielle en utilisant le paramètre axis
Nous allons d’abord trouver la norme du vecteur.
from numpy import linalg as la
import numpy as np
x = np.array([[11, 12, 5], [15, 6, 10], [10, 8, 12], [12, 15, 8], [34, 78, 90]])
norm = la.norm(x, axis=0)
print("The vector norm is:")
print(norm)
Production:
The vector norm is:
[41.78516483 80.95060222 91.83136719]
Notez que la fonction a renvoyé un tableau à N dimensions comme norme vectorielle calculée.
Maintenant, nous allons calculer la norme matricielle. Nous allons passer le paramètre axis
comme le 2- tuple
de la valeur entière.
from numpy import linalg as la
import numpy as np
x = np.array([[11, 12, 5], [15, 6, 10], [10, 8, 12], [12, 15, 8], [34, 78, 90]])
norm = la.norm(x, axis=(0, 1))
print("The value of matrix norm is:")
print(norm)
Production:
The value of matrix norm is:
129.35223229616102
Exemples de codes: numpy.linalg.norm()
pour utiliser le paramètre ord
Le paramètre ord
a plusieurs valeurs.
from numpy import linalg as la
import numpy as np
x = np.array([[11, 12, 5], [15, 6, 10], [10, 8, 12], [12, 15, 8], [34, 78, 90]])
norm = la.norm(x, "fro")
print("The value of matrix norm is:")
print(norm)
Production:
The value of matrix norm is:
129.35223229616102
La fonction a généré la valeur de la norme de la matrice de Frobenius.
from numpy import linalg as la
import numpy as np
x = np.array([[11, 12, 5], [15, 6, 10], [10, 8, 12], [12, 15, 8], [34, 78, 90]])
norm = la.norm(x, "nuuc")
print("The value of matrix norm is:")
print(norm)
Production:
The value of matrix norm is:
152.28781231351272
La fonction a généré la norme matricielle. C’est la somme des valeurs au singulier.