Encuentre una matriz o norma vectorial usando NumPy
Para encontrar una matriz o una norma vectorial usamos la función numpy.linalg.norm() de la biblioteca Numpy de Python. Esta función devuelve una de las siete normas matriciales o una de las infinitas normas vectoriales dependiendo del valor de sus parámetros.
Sintaxis: numpy.linalg.norm(x, ord=Ninguno, eje=Ninguno)
Parámetros:
X: aporte
palabra: orden de norma
eje: Ninguno, devuelve un vector o una norma matricial y, si es un valor entero, especifica el eje de x a lo largo del cual se calculará la norma vectorial.
Ejemplo 1:
Python3
# import library> import> numpy as np> # initialize vector> vec> => np.arange(> 10> )> # compute norm of vector> vec_norm> => np.linalg.norm(vec)> print> (> 'Vector norm:'> )> print> (vec_norm)> |
Producción:
Vector norm: 16.881943016134134
El código anterior calcula la norma vectorial de un vector de dimensión (1, 10)
Ejemplo 2:
Python3
# import library> import> numpy as np> # initialize matrix> mat> => np.array([[> 1> ,> 2> ,> 3> ],> > [> 4> ,> 5> ,> 6> ]])> # compute norm of matrix> mat_norm> => np.linalg.norm(mat)> print> (> 'Matrix norm:'> )> print> (mat_norm)> |
Producción:
Matrix norm: 9.539392014169456
Aquí obtenemos la norma matricial para una matriz de dimensión (2, 3)
Ejemplo 3:
Para calcular la norma matricial a lo largo de un eje particular:
Python3
# import library> import> numpy as np> mat> => np.array([[> 1> ,> 2> ,> 3> ],> > [> 4> ,> 5> ,> 6> ]])> # compute matrix num along axis> mat_norm> => np.linalg.norm(mat, axis> => 1> )> print> (> 'Matrix norm along particular axis :'> )> print> (mat_norm)> |
Producción:
Matrix norm along particular axis : [3.74165739 8.77496439]
Este código genera una norma matricial y la salida también es una matriz de forma (1, 2)
Ejemplo 4:
Python3
# import library> import> numpy as np> # initialize vector> vec> => np.arange(> 9> )> # convert vector into matrix> mat> => vec.reshape((> 3> ,> 3> ))> # compute norm of vector> vec_norm> => np.linalg.norm(vec)> print> (> 'Vector norm:'> )> print> (vec_norm)> # computer norm of matrix> mat_norm> => np.linalg.norm(mat)> print> (> 'Matrix norm:'> )> print> (mat_norm)> |
Producción:
Vector norm: 14.2828568570857 Matrix norm: 14.2828568570857
Del resultado anterior, queda claro que si convertimos un vector en una matriz, o si ambos tienen los mismos elementos, entonces su norma también será igual.