SciPy - Grundfunktionalität

Standardmäßig waren alle NumPy-Funktionen über den SciPy-Namespace verfügbar. Es ist nicht erforderlich, die NumPy-Funktionen explizit zu importieren, wenn SciPy importiert wird. Das Hauptobjekt von NumPy ist das homogene mehrdimensionale Array. Es ist eine Tabelle von Elementen (normalerweise Zahlen) vom gleichen Typ, die durch ein Tupel positiver Ganzzahlen indiziert sind. In NumPy werden Bemaßungen als Achsen bezeichnet. Die Anzahl deraxes heißt als rank.

Lassen Sie uns nun die Grundfunktionalität von Vektoren und Matrizen in NumPy überarbeiten. Da SciPy auf NumPy-Arrays basiert, ist ein Verständnis der NumPy-Grundlagen erforderlich. Da sich die meisten Teile der linearen Algebra nur mit Matrizen befassen.

NumPy Vector

Ein Vektor kann auf verschiedene Arten erstellt werden. Einige von ihnen werden unten beschrieben.

Konvertieren von Python-Array-ähnlichen Objekten in NumPy

Betrachten wir das folgende Beispiel.

import numpy as np
list = [1,2,3,4]
arr = np.array(list)
print arr

Die Ausgabe des obigen Programms ist wie folgt.

[1 2 3 4]

Eigene NumPy-Array-Erstellung

NumPy verfügt über integrierte Funktionen zum Erstellen von Arrays von Grund auf neu. Einige dieser Funktionen werden nachfolgend erläutert.

Verwenden von Nullen ()

Die Funktion Nullen (Form) erstellt ein Array mit 0 Werten mit der angegebenen Form. Der Standard-D-Typ ist float64. Betrachten wir das folgende Beispiel.

import numpy as np
print np.zeros((2, 3))

Die Ausgabe des obigen Programms ist wie folgt.

array([[ 0., 0., 0.],
[ 0., 0., 0.]])

Verwenden von Einsen ()

Die Funktion Einsen (Form) erstellt ein Array mit 1 Werten. Im Übrigen ist es identisch mit Nullen. Betrachten wir das folgende Beispiel.

import numpy as np
print np.ones((2, 3))

Die Ausgabe des obigen Programms ist wie folgt.

array([[ 1., 1., 1.],
[ 1., 1., 1.]])

Verwenden von arange ()

Die Funktion arange () erstellt Arrays mit regelmäßig inkrementierenden Werten. Betrachten wir das folgende Beispiel.

import numpy as np
print np.arange(7)

Das obige Programm erzeugt die folgende Ausgabe.

array([0, 1, 2, 3, 4, 5, 6])

Definieren des Datentyps der Werte

Betrachten wir das folgende Beispiel.

import numpy as np
arr = np.arange(2, 10, dtype = np.float)
print arr
print "Array Data Type :",arr.dtype

Das obige Programm erzeugt die folgende Ausgabe.

[ 2. 3. 4. 5. 6. 7. 8. 9.]
Array Data Type : float64

Verwenden von linspace ()

Die Funktion linspace () erstellt Arrays mit einer bestimmten Anzahl von Elementen, die gleichmäßig zwischen den angegebenen Anfangs- und Endwerten verteilt sind. Betrachten wir das folgende Beispiel.

import numpy as np
print np.linspace(1., 4., 6)

Das obige Programm erzeugt die folgende Ausgabe.

array([ 1. , 1.6, 2.2, 2.8, 3.4, 4. ])

Matrix

Eine Matrix ist ein spezialisiertes 2D-Array, das durch Operationen seine 2D-Natur beibehält. Es hat bestimmte spezielle Operatoren wie * (Matrixmultiplikation) und ** (Matrixleistung). Betrachten wir das folgende Beispiel.

import numpy as np
print np.matrix('1 2; 3 4')

Das obige Programm erzeugt die folgende Ausgabe.

matrix([[1, 2],
[3, 4]])

Konjugieren Sie die Transponierung der Matrix

Diese Funktion gibt die (komplexe) konjugierte Transponierte von zurück self. Betrachten wir das folgende Beispiel.

import numpy as np
mat = np.matrix('1 2; 3 4')
print mat.H

Das obige Programm erzeugt die folgende Ausgabe.

matrix([[1, 3],
        [2, 4]])

Matrix transponieren

Diese Funktion gibt die Transponierung von Selbst zurück. Betrachten wir das folgende Beispiel.

import numpy as np
mat = np.matrix('1 2; 3 4')
mat.T

Das obige Programm erzeugt die folgende Ausgabe.

matrix([[1, 3],
        [2, 4]])

Wenn wir eine Matrix transponieren, erstellen wir eine neue Matrix, deren Zeilen die Spalten des Originals sind. Eine konjugierte Transposition vertauscht andererseits den Zeilen- und den Spaltenindex für jedes Matrixelement. Die Umkehrung einer Matrix ist eine Matrix, die, wenn sie mit der ursprünglichen Matrix multipliziert wird, zu einer Identitätsmatrix führt.