Python Matrix: Beispiele für Transponierung, Multiplikation und NumPy-Arrays

Inhaltsverzeichnis:

Anonim

Was ist Python Matrix?

Eine Python-Matrix ist ein spezielles zweidimensionales rechteckiges Array von Daten, die in Zeilen und Spalten gespeichert sind. Die Daten in einer Matrix können Zahlen, Zeichenfolgen, Ausdrücke, Symbole usw. sein. Die Matrix ist eine der wichtigen Datenstrukturen, die für mathematische und wissenschaftliche Berechnungen verwendet werden können.

In diesem Python-Tutorial lernen Sie:

  • Was ist Python Matrix?
  • Wie funktionieren Python-Matrizen?
  • Erstellen Sie Python Matrix mit einem Datentyp für verschachtelte Listen
  • So lesen Sie Daten in Python Matrix mithilfe einer Liste.
  • Beispiel 2: Lesen des letzten Elements aus jeder Zeile.
  • Beispiel 3: Drucken der Zeilen in der Matrix
  • Hinzufügen von Matrizen mithilfe einer verschachtelten Liste
  • Multiplikation von Matrizen mit verschachtelter Liste
  • Erstellen Sie Python Matrix mit Arrays aus dem Python Numpy-Paket
  • Matrixoperation mit Numpy.Array ()
  • Zugriff auf NumPy Matrix

Wie funktionieren Python-Matrizen?

Die Daten innerhalb des zweidimensionalen Arrays im Matrixformat sehen wie folgt aus:

Schritt 1)

Es zeigt eine 2x2-Matrix. Es hat zwei Zeilen und 2 Spalten. Die Daten in der Matrix sind Zahlen. Die Zeile1 hat die Werte 2,3 und die Zeile2 die Werte 4,5. Die Spalten, dh Spalte 1, haben Werte 2,4 und Spalte 2 hat Werte 3,5.

Schritt 2)

Es zeigt eine 2x3-Matrix. Es hat zwei Zeilen und drei Spalten. Die Daten in der ersten Zeile, dh Zeile 1, haben Werte 2,3,4 und Zeile 2 hat Werte 5,6,7. Die Spalten col1 haben Werte 2,5, col2 hat Werte 3,6 und col3 hat Werte 4,7.

Ebenso können Sie Ihre Daten in der nxn-Matrix in Python speichern. Viele Operationen können mit einer matrixartigen Addition, Subtraktion, Multiplikation usw. durchgeführt werden.

Python bietet keine einfache Möglichkeit, einen Matrixdatentyp zu implementieren.

Die Python-Matrix verwendet Arrays und kann implementiert werden.

  • Erstellen Sie eine Python-Matrix mit dem Datentyp der verschachtelten Liste
  • Erstellen Sie Python Matrix mit Arrays aus dem Python Numpy-Paket

Erstellen Sie Python Matrix mit einem Datentyp für verschachtelte Listen

In Python werden die Arrays mit dem Listendatentyp dargestellt. Verwenden Sie nun die Liste, um eine Python-Matrix zu erstellen.

Wir werden eine 3x3-Matrix erstellen, wie unten gezeigt:

  • Die Matrix besteht aus 3 Zeilen und 3 Spalten.
  • Die erste Zeile in einem Listenformat lautet wie folgt: [8,14, -6]
  • Die zweite Zeile in einer Liste lautet: [12,7,4]
  • Die dritte Zeile in einer Liste lautet: [-11,3,21]

Die Matrix in einer Liste mit allen Zeilen und Spalten sieht wie folgt aus:

List = [[Row1],[Row2],[Row3]… [RowN]]

Gemäß der oben aufgeführten Matrix lautet der Listentyp mit den Matrixdaten wie folgt:

M1 = [[8, 14, -6], [12,7,4], [-11,3,21]]

So lesen Sie Daten in Python Matrix mithilfe einer Liste.

Wir werden die oben definierte Matrix verwenden. Das Beispiel liest die Daten, druckt die Matrix und zeigt das letzte Element aus jeder Zeile an.

Beispiel: Zum Drucken der Matrix

M1 = [[8, 14, -6],[12,7,4],[-11,3,21]]#To print the matrixprint(M1)

Ausgabe:

The Matrix M1 = [[8, 14, -6], [12, 7, 4], [-11, 3, 21]]

Beispiel 2: Lesen des letzten Elements aus jeder Zeile.

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

Ausgabe:

-6421

Beispiel 3: Drucken der Zeilen in der Matrix

M1 = [[8, 14, -6],[12,7,4],[-11,3,21]]matrix_length = len(M1)#To print the rows in the Matrixfor i in range(matrix_length):print(M1[i])

Ausgabe:

[8, 14, -6][12, 7, 4][-11, 3, 21]

Hinzufügen von Matrizen mithilfe einer verschachtelten Liste

Wir können leicht zwei gegebene Matrizen hinzufügen. Die Matrizen hier werden in der Listenform sein. Lassen Sie uns an einem Beispiel arbeiten, bei dem darauf geachtet wird, die angegebenen Matrizen hinzuzufügen.

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 initialisiert eine Matrix, in der das Ergebnis von M1 + M2 gespeichert wird.

Matrix 3:

M3 = [[0,0,0],[0,0,0],[0,0,0]]

Beispiel: Hinzufügen von Matrizen

Zum Hinzufügen verwenden die Matrizen eine for-Schleife, die beide angegebenen Matrizen durchläuft.

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 matricesfor i in range(len(M1)):for k in range(len(M2)):M3[i][k] = M1[i][k] + M2[i][k]#To Print the matrixprint("The sum of Matrix M1 and M2 = ", M3)

Ausgabe:

The sum of Matrix M1 and M2 = [[11, 30, -12], [21, 14, 0], [-12, 6, 34]]

Multiplikation von Matrizen mit verschachtelter Liste

Um die Matrizen zu multiplizieren, können wir die for-Schleife für beide Matrizen verwenden, wie im folgenden Code gezeigt:

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 matricesfor i in range(len(M1)):for k in range(len(M2)):M3[i][k] = M1[i][k] * M2[i][k]#To Print the matrixprint("The multiplication of Matrix M1 and M2 = ", M3)

Ausgabe:

The multiplication of Matrix M1 and M2 = [[24, 224, 36], [108, 49, -16], [11, 9, 273]]

Erstellen Sie Python Matrix mit Arrays aus dem Python Numpy-Paket

Die Python-Bibliothek Numpy hilft beim Umgang mit Arrays. Numpy verarbeitet ein Array im Vergleich zur Liste etwas schneller.

Um mit Numpy arbeiten zu können, müssen Sie es zuerst installieren. Führen Sie die folgenden Schritte aus, um Numpy zu installieren.

Schritt 1)

Der Befehl zum Installieren von Numpy lautet:

pip install NumPy

Schritt 2)

Um Numpy in Ihrem Code verwenden zu können, müssen Sie ihn importieren.

import NumPy

Schritt 3)

Sie können Numpy auch mit einem Alias ​​importieren, wie unten gezeigt:

import NumPy as np

Wir werden die array () -Methode von Numpy verwenden, um eine Python-Matrix zu erstellen.

Beispiel: Array in Numpy zum Erstellen einer Python-Matrix

import numpy as npM1 = np.array([[5, -10, 15], [3, -6, 9], [-4, 8, 12]])print(M1)

Ausgabe:

[[ 5 -10 15][ 3 -6 9][ -4 8 12]]

Matrixoperation mit Numpy.Array ()

Die Matrixoperation, die ausgeführt werden kann, ist Addition, Subtraktion, Multiplikation, Transponierung, Lesen der Zeilen, Spalten einer Matrix, Schneiden der Matrix usw. In allen Beispielen verwenden wir eine array () -Methode.

Matrixaddition

Um die Matrix zu addieren, erstellen wir mit numpy.array () zwei Matrizen und fügen sie mit dem Operator (+) hinzu.

Beispiel:

import numpy as npM1 = 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 + M2print(M3)

Ausgabe:

[[ 12 -12 36][ 16 12 48][ 6 -12 60]]

Matrixsubtraktion

Um die Matrix zu subtrahieren, erstellen wir mit numpy.array () zwei Matrizen und subtrahieren sie mit dem Operator (-).

Beispiel:

import numpy as npM1 = 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 - M2print(M3)

Ausgabe:

[[ -6 24 -18][ -6 -32 -18][-20 40 -18]]

Matrix-Multiplikation

Zuerst werden zwei Matrizen mit numpy.arary () erstellt. Um sie zu multiplizieren, können Sie die numpy dot () -Methode verwenden. Numpy.dot () ist das Punktprodukt der Matrix M1 und M2. Numpy.dot () verarbeitet die 2D-Arrays und führt Matrixmultiplikationen durch.

Beispiel:

import numpy as npM1 = np.array([[3, 6], [5, -10]])M2 = np.array([[9, -18], [11, 22]])M3 = M1.dot(M2)print(M3)

Ausgabe:

[[ 93 78][ -65 -310]]

Matrix Transponieren

Die Transponierung einer Matrix wird berechnet, indem die Zeilen als Spalten und die Spalten als Zeilen geändert werden. Mit der Funktion transpose () von Numpy kann die Transponierung einer Matrix berechnet werden.

Beispiel:

import numpy as npM1 = np.array([[3, 6, 9], [5, -10, 15], [4,8,12]])M2 = M1.transpose()print(M2)

Ausgabe:

[[ 3 5 4][ 6 -10 8][ 9 15 12]]

Schneiden einer Matrix

Beim Schneiden werden die Elemente aus der Matrix basierend auf dem angegebenen Start- / Endindex zurückgegeben.

  • Die Syntax für das Schneiden lautet - [Start: Ende]
  • Wenn der Startindex nicht angegeben wird, wird er als 0 betrachtet. Beispiel: [: 5] bedeutet [0: 5].
  • Wenn das Ende nicht übergeben wird, wird es als Länge des Arrays verwendet.
  • Wenn der Start / das Ende negative Werte hat, erfolgt das Schneiden vom Ende des Arrays aus.

Bevor wir uns mit dem Schneiden einer Matrix befassen, sollten wir zunächst verstehen, wie Slice auf ein einfaches Array angewendet wird.

import numpy as nparr = np.array([2,4,6,8,10,12,14,16])print(arr[3:6]) # will print the elements from 3 to 5print(arr[:5]) # will print the elements from 0 to 4print(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 -2print(arr[:-1]) # will print from end i.e. 0 to -2

Ausgabe:

[ 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]

Lassen Sie uns nun das Slicing auf der Matrix implementieren. Schneiden einer Matrix durchführen

Die Syntax lautet M1 [row_start: row_end, col_start: col_end]

  • Der erste Start / Ende ist für die Zeile, dh um die Zeilen der Matrix auszuwählen.
  • Der zweite Anfang / Ende ist für die Spalte, dh um die Spalten der Matrix auszuwählen.

Die Matrix M1, die wir verwenden werden, lautet wie folgt:

M1 = np.array([[2, 4, 6, 8, 10],[3, 6, 9, -12, -15],[4, 8, 12, 16, -20],[5, -10, 15, -20, 25]])

Es gibt insgesamt 4 Zeilen. Der Index beginnt von 0 bis 3. Die 0 - te Zeile ist die [2,4,6,8,10], 1 st Zeile [3,6,9, -12, -15] , gefolgt von 2 nd und 3 rd .

Die Matrix M1 hat 5 Spalten. Der Index beginnt von 0 bis 4 0 - ten Spalte weist Werte [2,3,4,5], 1 st Spalten haben Werte [4,6,8, -10] , gefolgt von 2 nd , 3 rd , 4 th , und 5 th .

Hier ist ein Beispiel, das zeigt, wie die Zeilen- und Spaltendaten mithilfe des Slicing aus der Matrix abgerufen werden. In dem Beispiel werden wir den Druck 1 st und 2 nd Reihe und für die Spalten, wollen wir die erste, zweite und dritte Spalte. Um diese Ausgabe zu erhalten, haben wir verwendet: M1 [1: 3, 1: 4]

Beispiel:

import numpy as npM1 = 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.

Ausgabe:

[[ 6 9 -12][ 8 12 16]]

Beispiel: Zum Drucken aller Zeilen und dritten Spalten

import numpy as npM1 = 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.

Ausgabe:

[ 8 -12 16 -20]

Beispiel: Zum Drucken der ersten Zeile und aller Spalten

import numpy as npM1 = 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

Ausgabe:

[[ 2 4 6 8 10]]

Beispiel: Zum Drucken der ersten drei Zeilen und der ersten beiden Spalten

import numpy as npM1 = 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])

Ausgabe:

[[2 4][3 6][4 8]]

Zugriff auf NumPy Matrix

Wir haben gesehen, wie das Schneiden funktioniert. In Anbetracht dessen werden wir herausfinden, wie die Zeilen und Spalten aus der Matrix abgerufen werden.

So drucken Sie die Zeilen der Matrix

Im Beispiel werden die Zeilen der Matrix gedruckt.

Beispiel:

import numpy as npM1 = np.array([[3, 6, 9], [5, -10, 15], [4,8,12]])print(M1[0]) #first rowprint(M1[1]) # the second rowprint(M1[-1]) # -1 will print the last row

Ausgabe:

[3 6 9][ 5 -10 15][ 4 8 12]

Um die letzte Zeile zu erhalten, können Sie den Index oder -1 verwenden. Zum Beispiel hat die Matrix 3 Zeilen,

M1 [0] gibt Ihnen also die erste Zeile.

M1 [1] gibt Ihnen die zweite Reihe

M1 [2] oder M1 [-1] geben Ihnen die dritte oder letzte Zeile.

So drucken Sie die Spalten der Matrix

import numpy as npM1 = 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 Columnprint(M1[:,3]) # Will print the third Columnprint(M1[:,-1]) # -1 will give you the last column

Ausgabe:

[2 3 4 5][ 8 -12 16 -20][ 10 -15 -20 25]

Zusammenfassung:

  • Eine Python-Matrix ist ein spezielles zweidimensionales rechteckiges Array von Daten, die in Zeilen und Spalten gespeichert sind. Die Daten in einer Matrix können Zahlen, Zeichenfolgen, Ausdrücke, Symbole usw. sein. Die Matrix ist eine der wichtigen Datenstrukturen, die für mathematische und wissenschaftliche Berechnungen verwendet werden können.
  • Python bietet keine einfache Möglichkeit, einen Matrixdatentyp zu implementieren. Die Python-Matrix kann mithilfe eines Datentyps für verschachtelte Listen und mithilfe der Numpy-Bibliothek erstellt werden.
  • Die Python-Bibliothek Numpy hilft beim Umgang mit Arrays. Numpy verarbeitet ein Array im Vergleich zur Liste etwas schneller.
  • Die Matrixoperation, die ausgeführt werden kann, ist Addition, Subtraktion, Multiplikation, Transponierung, Lesen der Zeilen, Spalten einer Matrix, Schneiden der Matrix usw.
  • Um zwei Matrizen hinzuzufügen, können Sie numpy.array () verwenden und sie mit dem Operator (+) hinzufügen.
  • Um sie zu multiplizieren, können Sie die numpy dot () -Methode verwenden. Numpy.dot () ist das Punktprodukt der Matrix M1 und M2. Numpy.dot () verarbeitet die 2D-Arrays und führt Matrixmultiplikationen durch.
  • Die Transponierung einer Matrix wird berechnet, indem die Zeilen als Spalten und die Spalten als Zeilen geändert werden. Mit der Funktion transpose () von Numpy kann die Transponierung einer Matrix berechnet werden.
  • Durch Schneiden einer Matrix erhalten Sie die Elemente basierend auf dem angegebenen Start- / Endindex zurück.