logo

Etsi matriisi tai vektorinormi NumPy:n avulla

Matriisin tai vektorinormin löytämiseksi käytämme Python-kirjaston Numpy funktiota numpy.linalg.norm(). Tämä funktio palauttaa yhden seitsemästä matriisinormista tai yhden äärettömästä vektorinormista riippuen sen parametrien arvosta.

Syntaksi: numpy.linalg.norm(x, ord=ei mitään, akseli=ei mitään)
Parametrit:
x: syöttö
sana: normin järjestys
akseli: Ei mitään, palauttaa joko vektorin tai matriisinormin ja jos se on kokonaislukuarvo, se määrittää x:n akselin, jota pitkin vektorinormi lasketaan



Esimerkki 1:

Python 3



voi abstraktilla luokalla olla rakentaja






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

>

>

Lähtö:

Vector norm: 16.881943016134134>

Yllä oleva koodi laskee (1, 10) vektorin vektorinormin
Esimerkki 2:

Python 3




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

>

>

Lähtö:

Matrix norm: 9.539392014169456>

Tässä saadaan matriisinormi dimensiomatriisille (2, 3)
Esimerkki 3:
Matriisinormin laskeminen tiettyä akselia pitkin –

Python 3




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

>

>

Lähtö:

Matrix norm along particular axis : [3.74165739 8.77496439]>

Tämä koodi luo matriisinormin ja tulos on myös muotomatriisi (1, 2)
Esimerkki 4:

Python 3


lajitteluun arraylist java



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

>

>

Lähtö:

Vector norm: 14.2828568570857 Matrix norm: 14.2828568570857>

Yllä olevasta lähdöstä käy selväksi, muunnetaanko vektori matriisiksi tai jos molemmilla on samat alkiot, niin myös niiden normi on sama.