Python Matrix: Transponering, Multiplikation, NumPy-arrays
โก Smart opsummering
A Python En matrix er et todimensionelt array af data i rรฆkker og kolonner, der bruges i matematik og naturvidenskab. Her lรฆrer du at oprette matricer med indbyggede lister og NumPy, og udfรธre addition, multiplikation, transponering og opdeling.

Hvad er Python Matrix?
A Python matrix er en specialiseret todimensional rektangulรฆr matrix af data, der er gemt i rรฆkker og kolonner. Dataene i en matrix kan vรฆre tal, strenge, udtryk, symboler osv. Matrix er en af โโde vigtige datastrukturer, som kan bruges i matematiske og videnskabelige beregninger.
Hvordan Python Virker matricer?
Dataene inde i det todimensionelle array i matrixformat ser ud som fรธlger:
Trin 1) Det viser en 2ร2 matrix. Den har to rรฆkker og 2 kolonner. Dataene inde i matrixen er tal. Rรฆkke1 har vรฆrdierne 2,3, og rรฆkke2 har vรฆrdierne 4,5. Kolonnerne, dvs. col1, har vรฆrdierne 2,4, og col2 har vรฆrdierne 3,5.
Trin 2) Det viser en 2ร3 matrix. Den har to rรฆkker og tre kolonner. Dataene i den fรธrste rรฆkke, dvs. rรฆkke1, har vรฆrdierne 2,3,4, og rรฆkke2 har vรฆrdierne 5,6,7. Kolonnerne col1 har vรฆrdierne 2,5, col2 har vรฆrdierne 3,6, og col3 har vรฆrdierne 4,7.
Sรฅ pรฅ samme mรฅde kan du have dine data gemt inde i nxn-matrixen PythonMange operationer kan udfรธres pรฅ en matrixlignende addition, subtraction, multiplikation osv.
Python har ikke en ligetil mรฅde at implementere en matrixdatatype pรฅ.
Python-matricen gรธr brug af arrays, og det samme kan implementeres.
- Opret en Python Matrix ved hjรฆlp af den indlejrede listedatatype
- Opret Python Matrix ved hjรฆlp af Arrays fra Python Numpy pakke
Opret Python Matrix ved hjรฆlp af en indlejret listedatatype
In Python, er arrays reprรฆsenteret ved hjรฆlp af listedatatypen. Sรฅ nu vil gรธre brug af listen til at oprette en python matrix.
Vi laver en 3ร3 matrix, som vist nedenfor:
- Matrixen har 3 rรฆkker og 3 kolonner.
- Den fรธrste rรฆkke i et listeformat vil vรฆre som fรธlger: [8,14,-6]
- Den anden rรฆkke pรฅ en liste vil vรฆre: [12,7,4]
- Den tredje rรฆkke pรฅ en liste vil vรฆre: [-11,3,21]
Matrixen inde i en liste med alle rรฆkker og kolonner er som vist nedenfor:
List = [[Row1],
[Row2],
[Row3]
...
[RowN]]
Sรฅ i henhold til matrixen ovenfor er listetypen med matrixdata som fรธlger:
M1 = [[8, 14, -6], [12,7,4], [-11,3,21]]
At lรฆse data inde Python Matrix ved hjรฆlp af en liste.
Vi vil gรธre brug af den ovenfor definerede matrix. Eksemplet vil lรฆse dataene, udskrive matrixen, vise det sidste element fra hver rรฆkke.
Eksempel: At udskrive matrixen
M1 = [[8, 14, -6],
[12,7,4],
[-11,3,21]]
#To print the matrix
print(M1)
Output:
The Matrix M1 = [[8, 14, -6], [12, 7, 4], [-11, 3, 21]]
Eksempel 2: At lรฆse det sidste element fra hver rรฆkke
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])
Output:
-6 4 21
Eksempel 3: At udskrive rรฆkkerne i matrixen
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])
Output:
[8, 14, -6] [12, 7, 4] [-11, 3, 21]
Tilfรธjelse af matricer ved hjรฆlp af indlejret liste
Vi kan nemt tilfรธje to givne matricer. Matricerne her vil vรฆre i listeformen. Lad os arbejde pรฅ et eksempel, der sรธrger for at tilfรธje de givne matricer.
Matrix 1:
M1 = [[8, 14, -6],
[12,7,4],
[-11,3,21]]
Matrix 2:
M2 = [[3, 16, -6],
[9,7,-4],
[-1,3,13]]
Last initialiserer en matrix, der gemmer resultatet af M1 + M2.
Matrix 3:
M3 = [[0,0,0],
[0,0,0],
[0,0,0]]
Eksempel: Tilfรธjelse af matricer
For at tilfรธje, vil matricerne gรธre brug af en for-lรธkke, der gรฅr gennem begge de angivne matricer.
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)
Output:
The sum of Matrix M1 and M2 = [[11, 30, -12], [21, 14, 0], [-12, 6, 34]]
Multiplikation af matricer ved hjรฆlp af Nested List
For at gange matricerne kan vi bruge for-lรธkken pรฅ begge matricer 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)
Output:
The multiplication of Matrix M1 and M2 = [[24, 224, 36], [108, 49, -16], [11, 9, 273]]
Opret Python Matrix ved hjรฆlp af Arrays fra Python Numpy pakke
Pythonbiblioteket Numpy hjรฆlper med at hรฅndtere arrays. Numpy behandler et array lidt hurtigere i forhold til listen.
For at arbejde med Numpy skal du fรธrst installere det. Fรธlg trinene nedenfor for at installere Numpy.
Trin 1) Kommandoen til at installere Numpy er:
pip install NumPy
Trin 2) For at gรธre brug af Numpy i din kode, skal du importere den.
import NumPy
Trin 3) Du kan ogsรฅ importere Numpy ved hjรฆlp af et alias, som vist nedenfor:
import NumPy as np
Vi skal bruge array()-metoden fra Numpy til at skabe en pythonmatrix.
Eksempel: Array i Numpy for at oprette Python Matrix
import numpy as np M1 = np.array([[5, -10, 15], [3, -6, 9], [-4, 8, 12]]) print(M1)
Output:
[[ 5 -10 15] [ 3 -6 9] [ -4 8 12]]
Matrix Operation ved hjรฆlp af Numpy.Array()
Matrixoperationen, der kan udfรธres, er addition, subtraction, multiplikation, transponering, lรฆsning af rรฆkker og kolonner i en matrix, opdeling af matrixen osv. I alle eksemplerne vil vi bruge en array()-metode.
Matrix tilfรธjelse
For at udfรธre addition pรฅ matricen, vil vi oprette to matricer ved hjรฆlp af numpy.array() og tilfรธje dem ved hjรฆlp af (+) 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)
Output:
[[ 12 -12 36] [ 16 12 48] [ 6 -12 60]]
Matrix Subtraction
At udfรธre subtraction pรฅ matricen, vil vi oprette to matricer ved hjรฆlp af numpy.array() og subtract dem ved hjรฆlp af (-) 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)
Output:
[[ -6 24 -18] [ -6 -32 -18] [-20 40 -18]]
Matrix multiplikation
Fรธrst vil der oprettes to matricer ved hjรฆlp af numpy.arary(). For at multiplicere dem kan du bruge numpy dot() metoden. Numpy.dot() er prikproduktet af matrix M1 og M2. Numpy.dot() hรฅndterer 2D-arrays og udfรธrer matrixmultiplikationer.
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)
Output:
[[ 93 78] [ -65 -310]]
Matrix Transponering
Transponeringen af โโen matrix beregnes ved at รฆndre rรฆkkerne som kolonner og kolonner som rรฆkker. Transpose()-funktionen fra Numpy kan bruges til at beregne transponeringen af โโen matrix.
Eksempel:
import numpy as np M1 = np.array([[3, 6, 9], [5, -10, 15], [4,8,12]]) M2 = M1.transpose() print(M2)
Output:
[[ 3 5 4] [ 6 -10 8] [ 9 15 12]]
Udskรฆring af en matrix
Slicing vil returnere elementerne fra matrixen baseret pรฅ det angivne start/slut-indeks.
- Syntaksen for udskรฆring er โ [start:slut]
- Hvis startindekset ikke er angivet, betragtes det som 0. For eksempel [:5], betyder det som [0:5].
- Hvis slutningen ikke passeres, vil den tage som lรฆngden af โโarrayet.
- Hvis starten/slutningen har negative vรฆrdier, vil udskรฆringen blive udfรธrt fra slutningen af โโarrayet.
Fรธr vi arbejder med at skรฆre pรฅ en matrix, lad os fรธrst forstรฅ, hvordan man anvender skive pรฅ et simpelt array.
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
Output:
[ 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]
Lad os nu implementere udskรฆring pรฅ matrix. At udfรธre udskรฆring pรฅ en matrix
syntaksen vil vรฆre M1[row_start:row_end, col_start:col_end]
- Den fรธrste start/afslutning vil vรฆre for rรฆkken, dvs. at vรฆlge rรฆkkerne i matrixen.
- Den anden start/afslutning vil vรฆre for kolonnen, dvs. at vรฆlge kolonnerne i matrixen.
Matrixen M1 t, som vi skal bruge, 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]])
Der er i alt 4 rรฆkker. Indekset starter fra 0 til 3. 0th rรฆkke er [2,4,6,8,10], 1st rรฆkke er [3,6,9,-12,-15] efterfulgt af 2nd og 3rd.
Matrixen M1 har 5 sรธjler. Indekset starter fra 0 til 4. 0th kolonne har vรฆrdierne [2,3,4,5], 1st kolonner har vรฆrdier [4,6,8,-10] efterfulgt af 2nd, 3rd, 4th, og 5th.
Her er et eksempel, der viser, hvordan man henter rรฆkke- og kolonnedata fra matrixen ved hjรฆlp af udskรฆring. I eksemplet udskriver vi 1st og 2nd rรฆkke, og for kolonner vil vi have den fรธrste, anden og tredje kolonne. For at fรฅ det output har vi brugt: 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.
Output:
[[ 6 9 -12] [ 8 12 16]]
Eksempel: At udskrive alle rรฆkker 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.
Output:
[ 8 -12 16 -20]
Eksempel: For at udskrive den fรธrste rรฆkke og alle 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[:1,]) # This will print first row and all columns
Output:
[[ 2 4 6 8 10]]
Eksempel: For at udskrive de fรธrste tre rรฆkker og de fรธrste 2 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,:2])
Output:
[[2 4] [3 6] [4 8]]
Adgang til NumPy Matrix
Vi har set, hvordan udskรฆring fungerer. Med det i betragtning, vil vi se, hvordan man fรฅr rรฆkkerne og kolonnerne fra matrixen.
For at udskrive rรฆkkerne i matrixen
I eksemplet vil udskrive rรฆkkerne af matrixen.
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
Output:
[3 6 9] [ 5 -10 15] [ 4 8 12]
For at fรฅ den sidste rรฆkke kan du gรธre brug af indekset eller -1. For eksempel har matrixen 3 rรฆkker,
sรฅ M1[0] vil give dig den fรธrste rรฆkke,
M1[1] giver dig anden rรฆkke
M1[2] eller M1[-1] giver dig den tredje rรฆkke eller sidste rรฆkke.
For at udskrive matrixens 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[:,0]) # Will print the first Column print(M1[:,3]) # Will print the third Column print(M1[:,-1]) # -1 will give you the last column
Output:
[2 3 4 5] [ 8 -12 16 -20] [ 10 -15 -20 25]


