Find en matrix eller vektornorm ved hjælp af NumPy

For at finde en matrix eller vektornorm bruger vi funktionen numpy.linalg.norm() i Python-biblioteket Numpy. Denne funktion returnerer en af ​​de syv matrixnormer eller en af ​​de uendelige vektornormer afhængigt af værdien af ​​dens parametre.

Syntaks: numpy.linalg.norm(x, ord=Ingen, akse=Ingen)
Parametre:
x: input
ord: normorden
akse: Ingen, returnerer enten en vektor- eller en matrixnorm, og hvis det er en heltalsværdi, angiver den x-aksen, langs hvilken vektornormen vil blive beregnet

Eksempel 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)>

Produktion:

Vector norm: 16.881943016134134 

Ovenstående kode beregner vektornormen for en vektor med dimension (1, 10)
Eksempel 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)>

Produktion:

Matrix norm: 9.539392014169456 

Her får vi matrixnormen for en matrix med dimension (2, 3)
Eksempel 3:
For at beregne matrixnorm langs en bestemt akse -

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)>

Produktion:

Matrix norm along particular axis : [3.74165739 8.77496439] 

Denne kode genererer en matrixnorm, og outputtet er også en matrix af form (1, 2)
Eksempel 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)>

Produktion:

Vector norm: 14.2828568570857 Matrix norm: 14.2828568570857 

Fra ovenstående output er det klart, hvis vi konverterer en vektor til en matrix, eller hvis begge har samme elementer, så vil deres norm også være ens.