= np.array([[1, 2, 3], [4, 5, 6]]) matrix
3 Größe, Struktur und Typ
Wenn man sich nicht mehr sicher ist, welche Struktur oder Form ein Array hat oder oder diese Größen zum Beispiel für Schleifen nutzen möchte, bietet NumPy folgende Funktionen für das Auslesen dieser Größen an.
np.shape()
gibt die Längen der einzelnen Dimension in Form einer Liste zurück.
np.shape(matrix)
(2, 3)
Die native Python Funktion len()
gibt dagegen nur die Länge der ersten Dimension, also die Anzahl der Elemente in den äußeren Klammern wieder. Im obrigen Beispiel würde len()
also die beiden Listen [1, 2, 3]
und [4, 5, 6]
sehen.
len(matrix)
2
Die Funktion np.ndym()
gibt im Gegensatz zu np.shape()
nur die Anzahl der Dimensionen zurück.
np.ndim(matrix)
2
np.ndim()
kann mit np.shape()
und einer nativen Python Funktion erreicht werden. Wie?
np.ndim()
gibt die Länge der Liste von np.shape()
aus
len(np.shape(matrix))
2
Möchte man die Anzahl aller Elemente in einem Array ausgeben kann man die Funktion np.size()
benutzen.
np.size(matrix)
6
NumPy Arrays können verschiedene Datentypen beinhalten. Im folgenden haben wir drei verschiedene Arrays mit einem jeweils anderen Datentyp.
= np.array([1, 2, 3, 4, 5])
typ_a = np.array([0.1, 0.2, 0.3, 0.4, 0.5])
typ_b = np.array(["Montag", "Dienstag", "Mittwoch"]) typ_c
Mit der Methode np.dtype
können wir den Datentyp von Arrays ausgeben lassen. Meist wird dabei der Typ plus eine Zahl ausgegeben, welche die zum Speichern benötigte Bytezahl angibt. Das Array typ_a beinhaltet den Datentyp int64, also ganze Zahlen.
print(typ_a.dtype)
int64
Das Array typ_b beinhaltet den Datentyp float64, wobei float für Gleitkommazahlen steht.
print(typ_b.dtype)
float64
Das Array typ_c beinhaltet den Datentyp U8, wobei das U für Unicode steht. Hier wird als Unicodetext gespeichert.
print(typ_c.dtype)
<U8
Im folgenden finden Sie eine Tabelle mit den typischen Datentypen, die sie häufig antreffen.
Datentyp | Numpy Name | Beispiele |
---|---|---|
Wahrheitswert | bool |
[True, False, True] |
Ganze Zahl | int |
[-2, 5, -6, 7, 3] |
positive Ganze Zahlen | uint |
[1, 2, 3, 4, 5] |
Kommazahlen | float |
[1.3, 7.4, 3.5, 5.5] |
komplexe zahlen | complex |
[-1 + 9j, 2-77j, 72 + 11j] |
Textzeichen | U |
[“montag”, “dienstag”] |
Gegeben sei folgende Matrix:
= np.array([[[ 0, 1, 2, 3],
matrix 4, 5, 6, 7],
[ 8, 9, 10, 11]],
[
12, 13, 14, 15],
[[16, 17, 18, 19],
[20, 21, 22, 23]],
[
24, 25, 26, 27],
[[28, 29, 30, 31],
[32, 33, 34, 35]]]) [
Bestimmen Sie durch anschauen die Anzahl an Dimensionen und die Länge jeder Dimension. Von welchem Typ ist der Inhalt dieser Matrix?
Überprüfen Sie daraufhin Ihre Ergebnisse in dem Sie die passenden NumPy-Funktionen anwenden.