logo

Matricos manipuliavimas Python

Python matrica gali būti įgyvendinta kaip 2D sąrašas arba 2D masyvas. Matricos formavimas iš pastarosios suteikia papildomų funkcijų įvairioms matricos operacijoms atlikti. Šios operacijos ir masyvas yra apibrėžti modulyje niūrus .

Operacija ant Matrix:



    1. add() :- Ši funkcija naudojama atlikti elementų matricos pridėjimas . 2. subtract() :- Ši funkcija naudojama atlikti elementinė matricinė atimtis . 3. divide() :- Ši funkcija naudojama atlikti elementų išmintingas matricos padalijimas .

Įgyvendinimas:

Python








# Python code to demonstrate matrix operations> # add(), subtract() and divide()> > # importing numpy for matrix operations> import> numpy> > # initializing matrices> x>=> numpy.array([[>1>,>2>], [>4>,>5>]])> y>=> numpy.array([[>7>,>8>], [>9>,>10>]])> > # using add() to add matrices> print> (>'The element wise addition of matrix is : '>)> print> (numpy.add(x,y))> > # using subtract() to subtract matrices> print> (>'The element wise subtraction of matrix is : '>)> print> (numpy.subtract(x,y))> > # using divide() to divide matrices> print> (>'The element wise division of matrix is : '>)> print> (numpy.divide(x,y))>

>

>

Išvestis:

The element wise addition of matrix is : [[ 8 10] [13 15]] The element wise subtraction of matrix is : [[-6 -6] [-5 -5]] The element wise division of matrix is : [[ 0.14285714 0.25 ] [ 0.44444444 0.5 ]]>
    4. multiply() :- Ši funkcija naudojama atlikti elementinė matricinė daugyba . 5. dot() :- Ši funkcija naudojama apskaičiuoti matricos daugyba, o ne elementinė daugyba .

Python




# Python code to demonstrate matrix operations> # multiply() and dot()> > # importing numpy for matrix operations> import> numpy> > # initializing matrices> x>=> numpy.array([[>1>,>2>], [>4>,>5>]])> y>=> numpy.array([[>7>,>8>], [>9>,>10>]])> > # using multiply() to multiply matrices element wise> print> (>'The element wise multiplication of matrix is : '>)> print> (numpy.multiply(x,y))> > # using dot() to multiply matrices> print> (>'The product of matrices is : '>)> print> (numpy.dot(x,y))>

>

>

Išvestis:

The element wise multiplication of matrix is : [[ 7 16] [36 50]] The product of matrices is : [[25 28] [73 82]]>
    6. sqrt() :- Ši funkcija naudojama apskaičiuoti kiekvieno elemento kvadratinė šaknis matricos. 7. suma(x,axis):- Ši funkcija naudojama pridėkite visus elementus į matricą . Neprivalomas ašies argumentas apskaičiuoja stulpelio suma, jei ašis yra 0 ir eilutės suma, jei ašis yra 1 . 8. T :- Šis argumentas naudojamas perkelti nurodytą matricą.

Įgyvendinimas:

Python




# Python code to demonstrate matrix operations> # sqrt(), sum() and 'T'> > # importing numpy for matrix operations> import> numpy> > # initializing matrices> x>=> numpy.array([[>1>,>2>], [>4>,>5>]])> y>=> numpy.array([[>7>,>8>], [>9>,>10>]])> > # using sqrt() to print the square root of matrix> print> (>'The element wise square root is : '>)> print> (numpy.sqrt(x))> > # using sum() to print summation of all elements of matrix> print> (>'The summation of all matrix element is : '>)> print> (numpy.>sum>(y))> > # using sum(axis=0) to print summation of all columns of matrix> print> (>'The column wise summation of all matrix is : '>)> print> (numpy.>sum>(y,axis>=>0>))> > # using sum(axis=1) to print summation of all columns of matrix> print> (>'The row wise summation of all matrix is : '>)> print> (numpy.>sum>(y,axis>=>1>))> > # using 'T' to transpose the matrix> print> (>'The transpose of given matrix is : '>)> print> (x.T)>

>

>

Išvestis:

The element wise square root is : [[ 1. 1.41421356] [ 2. 2.23606798]] The summation of all matrix element is : 34 The column wise summation of all matrix is : [16 18] The row wise summation of all matrix is : [15 19] The transpose of given matrix is : [[1 4] [2 5]]>

Naudojant įdėtas kilpas:

Metodas:

  • Apibrėžkite matricas A ir B.
  • Naudodami funkciją len() gaukite matricų eilučių ir stulpelių skaičių.
  • C, D ir E matricas inicijuokite nuliais naudodami įdėtas kilpas arba sąrašo supratimą.
  • Naudokite įdėtas kilpas arba sąrašo supratimą, kad atliktumėte matricų sudėjimą, atimtį ir padalijimą pagal elementus.
  • Išspausdinkite gautas matricas C, D ir E.

Python3




ipconfig Ubuntu
A>=> [[>1>,>2>],[>4>,>5>]]> B>=> [[>7>,>8>],[>9>,>10>]]> rows>=> len>(A)> cols>=> len>(A[>0>])> > # Element wise addition> C>=> [[>0> for> i>in> range>(cols)]>for> j>in> range>(rows)]> for> i>in> range>(rows):> >for> j>in> range>(cols):> >C[i][j]>=> A[i][j]>+> B[i][j]> print>(>'Addition of matrices: '>, C)> > # Element wise subtraction> D>=> [[>0> for> i>in> range>(cols)]>for> j>in> range>(rows)]> for> i>in> range>(rows):> >for> j>in> range>(cols):> >D[i][j]>=> A[i][j]>-> B[i][j]> print>(>'Subtraction of matrices: '>, D)> > # Element wise division> E>=> [[>0> for> i>in> range>(cols)]>for> j>in> range>(rows)]> for> i>in> range>(rows):> >for> j>in> range>(cols):> >E[i][j]>=> A[i][j]>/> B[i][j]> print>(>'Division of matrices: '>, E)>

>

>

Išvestis

Addition of matrices: [[8, 10], [13, 15]] Subtraction of matrices: [[-6, -6], [-5, -5]] Division of matrices: [[0.14285714285714285, 0.25], [0.4444444444444444, 0.5]]>

Laiko sudėtingumas: O(n^2)
Erdvės sudėtingumas: O(n^2)