Python Matrise: Transponer, Multipliker, NumPy-matriser
โก Smart oppsummering
A Python En matrise er en todimensjonal matrise av data i rader og kolonner, brukt i matematikk og naturfag. Her lรฆrer du รฅ lage matriser med nestede lister og NumPy, og utfรธre addisjon, multiplikasjon, transponering og slicing.

Hva er Python Matrise?
A Python matrise er en spesialisert todimensjonal rektangulรฆr rekke data lagret i rader og kolonner. Dataene i en matrise kan vรฆre tall, strenger, uttrykk, symboler osv. Matrise er en av de viktige datastrukturene som kan brukes i matematiske og vitenskapelige beregninger.
hvordan Python Fungerer matriser?
Dataene inne i den todimensjonale matrisen i matriseformat ser ut som fรธlger:
Trinn 1) Den viser en 2ร2 matrise. Den har to rader og 2 kolonner. Dataene inne i matrisen er tall. Rad1 har verdiene 2,3, og rad2 har verdiene 4,5. Kolonnene, dvs. col1, har verdiene 2,4, og col2 har verdiene 3,5.
Trinn 2) Den viser en 2ร3 matrise. Den har to rader og tre kolonner. Dataene i den fรธrste raden, dvs. rad1, har verdiene 2,3,4, og rad2 har verdiene 5,6,7. Kolonnene col1 har verdiene 2,5, col2 har verdiene 3,6, og col3 har verdiene 4,7.
Sรฅ pรฅ samme mรฅte kan du ha dataene dine lagret inne i nxn-matrisen PythonMange operasjoner kan utfรธres pรฅ en matriselignende addisjon, subtracsjon, multiplikasjon osv.
Python har ikke en enkel mรฅte รฅ implementere en matrisedatatype.
Pythonmatrisen benytter seg av arrays, og det samme kan implementeres.
- Lag en Python Matrise som bruker den nestede listedatatypen
- Opprett Python Matrise ved hjelp av matriser fra Python Numpy pakke
Opprett Python Matrise som bruker en nestet listedatatype
In Python, er matrisene representert ved hjelp av listedatatypen. Sรฅ nรฅ vil bruke listen til รฅ lage en pythonmatrise.
Vi vil lage en 3ร3 matrise, som vist nedenfor:
- Matrisen har 3 rader og 3 kolonner.
- Den fรธrste raden i et listeformat vil vรฆre som fรธlger: [8,14,-6]
- Den andre raden i en liste vil vรฆre: [12,7,4]
- Den tredje raden i en liste vil vรฆre: [-11,3,21]
Matrisen i en liste med alle rader og kolonner er som vist nedenfor:
List = [[Row1],
[Row2],
[Row3]
...
[RowN]]
Sรฅ i henhold til matrisen oppfรธrt ovenfor er listetypen med matrisedata som fรธlger:
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]]
For รฅ lese data inne Python Matrise ved hjelp av en liste.
Vi vil benytte oss av matrisen definert ovenfor. Eksemplet vil lese dataene, skrive ut matrisen, vise det siste elementet fra hver rad.
Eksempel: For รฅ skrive ut matrisen
M1 = [[8, 14, -6],
[12,7,4],
[-11,3,21]]
#To print the matrix
print(M1)
Utgang:
The Matrix M1 = [[8, 14, -6], [12, 7, 4], [-11, 3, 21]]
Eksempel 2: For รฅ lese det siste elementet fra hver rad
M1 = [[8, 14, -6],
[12,7,4],
[-11,3,21]]
matrix_length = len(M1)
#To read the last element from each row.
for i in range(matrix_length):
print(M1[i][-1])
Utgang:
-6 4 21
Eksempel 3: For รฅ skrive ut radene i matrisen
M1 = [[8, 14, -6],
[12,7,4],
[-11,3,21]]
matrix_length = len(M1)
#To print the rows in the Matrix
for i in range(matrix_length):
print(M1[i])
Utgang:
[8, 14, -6] [12, 7, 4] [-11, 3, 21]
Legge til matriser ved รฅ bruke Nested List
Vi kan enkelt legge til to gitte matriser. Matrisene her vil vรฆre i listeformen. La oss jobbe med et eksempel som vil passe pรฅ รฅ legge til de gitte matrisene.
Matrise 1:
M1 = [[8, 14, -6],
[12,7,4],
[-11,3,21]]
Matrise 2:
M2 = [[3, 16, -6],
[9,7,-4],
[-1,3,13]]
Last vil initialisere en matrise som vil lagre resultatet av M1 + M2.
Matrise 3:
M3 = [[0,0,0],
[0,0,0],
[0,0,0]]
Eksempel: Legge til matriser
For รฅ legge til vil matrisene bruke en for-lรธkke som vil gรฅ gjennom begge matrisene som er gitt.
M1 = [[8, 14, -6],
[12,7,4],
[-11,3,21]]
M2 = [[3, 16, -6],
[9,7,-4],
[-1,3,13]]
M3 = [[0,0,0],
[0,0,0],
[0,0,0]]
matrix_length = len(M1)
#To Add M1 and M2 matrices
for i in range(len(M1)):
for k in range(len(M2)):
M3[i][k] = M1[i][k] + M2[i][k]
#To Print the matrix
print("The sum of Matrix M1 and M2 = ", M3)
Utgang:
The sum of Matrix M1 and M2 = [[11, 30, -12], [21, 14, 0], [-12, 6, 34]]
Multiplikasjon av matriser ved hjelp av Nested List
For รฅ multiplisere matrisene kan vi bruke for-lรธkken pรฅ begge matrisene som vist i koden nedenfor:
M1 = [[8, 14, -6],
[12,7,4],
[-11,3,21]]
M2 = [[3, 16, -6],
[9,7,-4],
[-1,3,13]]
M3 = [[0,0,0],
[0,0,0],
[0,0,0]]
matrix_length = len(M1)
#To Multiply M1 and M2 matrices
for i in range(len(M1)):
for k in range(len(M2)):
M3[i][k] = M1[i][k] * M2[i][k]
#To Print the matrix
print("The multiplication of Matrix M1 and M2 = ", M3)
Utgang:
The multiplication of Matrix M1 and M2 = [[24, 224, 36], [108, 49, -16], [11, 9, 273]]
Opprett Python Matrise ved hjelp av matriser fra Python Numpy pakke
Pythonbiblioteket Numpy hjelper til med รฅ hรฅndtere arrays. Numpy behandler en matrise litt raskere sammenlignet med listen.
For รฅ jobbe med Numpy, mรฅ du installere det fรธrst. Fรธlg trinnene nedenfor for รฅ installere Numpy.
Trinn 1) Kommandoen for รฅ installere Numpy er:
pip install NumPy
Trinn 2) For รฅ bruke Numpy i koden din, mรฅ du importere den.
import NumPy
Trinn 3) Du kan ogsรฅ importere Numpy ved รฅ bruke et alias, som vist nedenfor:
import NumPy as np
Vi skal bruke array()-metoden fra Numpy for รฅ lage en pythonmatrise.
Eksempel: Array i Numpy for รฅ lage Python Matrix
import numpy as np M1 = np.array([[5, -10, 15], [3, -6, 9], [-4, 8, 12]]) print(M1)
Utgang:
[[ 5 -10 15] [ 3 -6 9] [ -4 8 12]]
Matrix Operasjon ved รฅ bruke Numpy.Array()
Matriseoperasjonen som kan utfรธres er addisjon, subtraksjontracsjon, multiplikasjon, transponering, lesing av rader og kolonner i en matrise, oppdeling av matrisen osv. I alle eksemplene skal vi bruke en array()-metode.
Matrisetillegg
For รฅ utfรธre addisjon pรฅ matrisen, vil vi lage to matriser ved รฅ bruke numpy.array() og legge dem til med (+)-operatoren.
Eksempel:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [-7, 14, 21]]) M2 = np.array([[9, -18, 27], [11, 22, 33], [13, -26, 39]]) M3 = M1 + M2 print(M3)
Utgang:
[[ 12 -12 36] [ 16 12 48] [ 6 -12 60]]
Matrise-subtracsjon
ร utfรธre subtracsjon pรฅ matrisen, vil vi lage to matriser ved hjelp av numpy.array() og subtract dem ved hjelp av (-)-operatoren.
Eksempel:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [-7, 14, 21]]) M2 = np.array([[9, -18, 27], [11, 22, 33], [13, -26, 39]]) M3 = M1 - M2 print(M3)
Utgang:
[[ -6 24 -18] [ -6 -32 -18] [-20 40 -18]]
Matrisemultiplikasjon
Fรธrst vil lage to matriser ved รฅ bruke numpy.arary(). For รฅ multiplisere dem kan du bruke numpy dot()-metoden. Numpy.dot() er punktproduktet av matrise M1 og M2. Numpy.dot() hรฅndterer 2D-matrisene og utfรธrer matrisemultiplikasjoner.
Eksempel:
import numpy as np M1 = np.array([[3, 6], [5, -10]]) M2 = np.array([[9, -18], [11, 22]]) M3 = M1.dot(M2) print(M3)
Utgang:
[[ 93 78] [ -65 -310]]
Matrix Transponer
Transponeringen av en matrise beregnes ved รฅ endre radene som kolonner og kolonner som rader. Transpose()-funksjonen fra Numpy kan brukes til รฅ beregne transponeringen av en matrise.
Eksempel:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [4,8,12]]) M2 = M1.transpose() print(M2)
Utgang:
[[ 3 5 4] [ 6 -10 8] [ 9 15 12]]
Skjรฆring av en matrise
Slicing vil returnere elementene fra matrisen basert pรฅ start-/sluttindeksen som er gitt.
- Syntaksen for skjรฆring er โ [start:slutt]
- Hvis startindeksen ikke er gitt, regnes den som 0. For eksempel [:5], betyr det som [0:5].
- Hvis slutten ikke passeres, vil det ta som lengden pรฅ arrayet.
- Hvis start/slutt har negative verdier, vil skjรฆringen gjรธres fra slutten av matrisen.
Fรธr vi jobber med รฅ skjรฆre pรฅ en matrise, la oss fรธrst forstรฅ hvordan du bruker skive pรฅ en enkel matrise.
import numpy as np arr = np.array([2,4,6,8,10,12,14,16]) print(arr[3:6]) # will print the elements from 3 to 5 print(arr[:5]) # will print the elements from 0 to 4 print(arr[2:]) # will print the elements from 2 to length of the array. print(arr[-5:-1]) # will print from the end i.e. -5 to -2 print(arr[:-1]) # will print from end i.e. 0 to -2
Utgang:
[ 8 10 12] [ 2 4 6 8 10] [ 6 8 10 12 14 16] [ 8 10 12 14] [ 2 4 6 8 10 12 14]
La oss nรฅ implementere skjรฆring pรฅ matrise. For รฅ utfรธre skjรฆring pรฅ en matrise
syntaksen vil vรฆre M1[row_start:row_end, col_start:col_end]
- Fรธrste start/slutt vil vรฆre for raden, dvs. รฅ velge radene i matrisen.
- Den andre starten/slutten vil vรฆre for kolonnen, dvs. รฅ velge kolonnene i matrisen.
Matrisen M1 t som vi skal bruke er som fรธlger:
M1 = np.array([[2, 4, 6, 8, 10],
[3, 6, 9, -12, -15],
[4, 8, 12, 16, -20],
[5, -10, 15, -20, 25]])
Det er totalt 4 rader. Indeksen starter fra 0 til 3. 0th rad er [2,4,6,8,10], 1st rad er [3,6,9,-12,-15] etterfulgt av 2nd og 3rd.
Matrisen M1 har 5 kolonner. Indeksen starter fra 0 til 4. 0th kolonne har verdier [2,3,4,5], 1st kolonner har verdier [4,6,8,-10] etterfulgt av 2nd, 3rd, 4th, og 5th.
Her er et eksempel som viser hvordan du henter rader og kolonnedata fra matrisen ved hjelp av slicing. I eksemplet skriver vi ut 1st og 2nd rad, og for kolonner vil vi ha den fรธrste, andre og tredje kolonnen. For รฅ fรฅ den utgangen har vi brukt: M1[1:3, 1:4]
Eksempel:
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[1:3, 1:4]) # For 1:3, it will give first and second row. #The columns will be taken from first to third.
Utgang:
[[ 6 9 -12] [ 8 12 16]]
Eksempel: For รฅ skrive ut alle rader og tredje kolonner
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:,3]) # This will print all rows and the third column data.
Utgang:
[ 8 -12 16 -20]
Eksempel: For รฅ skrive ut den fรธrste raden og alle kolonnene
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:1,]) # This will print first row and all columns
Utgang:
[[ 2 4 6 8 10]]
Eksempel: For รฅ skrive ut de tre fรธrste radene og de to fรธrste kolonnene
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:3,:2])
Utgang:
[[2 4] [3 6] [4 8]]
Fรฅ tilgang til NumPy Matrix
Vi har sett hvordan skjรฆring fungerer. Nรฅr vi tar det i betraktning, vil vi finne ut hvordan vi fรฅr radene og kolonnene fra matrisen.
For รฅ skrive ut radene i matrisen
I eksemplet vil skrive ut radene i matrisen.
Eksempel:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [4,8,12]]) print(M1[0]) #first row print(M1[1]) # the second row print(M1[-1]) # -1 will print the last row
Utgang:
[3 6 9] [ 5 -10 15] [ 4 8 12]
For รฅ fรฅ den siste raden kan du bruke indeksen eller -1. For eksempel har matrisen 3 rader,
sรฅ M1[0] vil gi deg den fรธrste raden,
M1[1] vil gi deg andre rad
M1[2] eller M1[-1] vil gi deg den tredje raden eller siste raden.
For รฅ skrive ut kolonnene i matrisen
import numpy as np M1 = np.array([[2, 4, 6, 8, 10], [3, 6, 9, -12, -15], [4, 8, 12, 16, -20], [5, -10, 15, -20, 25]]) print(M1[:,0]) # Will print the first Column print(M1[:,3]) # Will print the third Column print(M1[:,-1]) # -1 will give you the last column
Utgang:
[2 3 4 5] [ 8 -12 16 -20] [ 10 -15 -20 25]


