HOWTO · NumPy

Holen Sie sich die Anzahl der Zeilen in NumPy

Die Eigenschaft array.shape kann verwendet werden, um die Anzahl der Zeilen und Spalten in einem NumPy-Array in Python zu bestimmen.

Auf dieser Seite

Für ein zweidimensionales NumPy-Array liefert array.shape[0] die Anzahl der Zeilen. Die Eigenschaft array.shape gibt das vollständige Tupel der Dimensionen zurück: Bei einem zweidimensionalen Array lautet es (rows, columns). len(array) und np.size(array, 0) liefern beide dieselbe Anzahl entlang der ersten Achse.

Für die folgenden Beispiele muss Python mit installiertem NumPy verfügbar sein.

Zeilenanzahl eines NumPy-Arrays mit der Eigenschaft array.shape ermitteln

NumPy nummeriert Achsen ab 0. Bei einem zweidimensionalen Array ist Achse 0 die Zeilenachse und Achse 1 die Spaltenachse. Verwenden Sie array.shape[0] für die Zeilen und array.shape[1] für die Spalten; nach shape sind keine Klammern erforderlich.

Führen Sie dieses Beispiel aus:

Der Code und die angezeigten Bezeichnungen oder Ausgaben in diesem Abschnitt bleiben auf Englisch.

import numpy as np

array = np.array([[1, 3, 5], [2, 4, 6]])

rows = array.shape[0]
columns = array.shape[1]

print("Rows =", rows)
print("Columns =", columns)

Ausgabe:

Rows = 2
Columns = 3

Die beiden inneren Listen bilden zwei Zeilen mit jeweils drei Werten. Die Form des Arrays ist daher (2, 3). Wenn Sie wissen, dass das Array zweidimensional ist, können Sie beide Dimensionen auch mit rows, columns = array.shape entpacken.

Ein eindimensionales Array hat eine Form wie (3,) und keine getrennten Zeilen- und Spaltendimensionen. Sein shape[0] entspricht der Anzahl der Elemente; shape[1] ist nicht verfügbar. Prüfen Sie mit array.ndim == 2, ob Ihre Anwendung ausdrücklich tabellarische Daten erfordert. Bei Arrays mit mehr Dimensionen beschreibt shape[0] weiterhin die erste Achse; ihre Bedeutung hängt davon ab, wie Ihre Daten organisiert sind.

Zeilenanzahl eines NumPy-Arrays mit der Funktion len() ermitteln

Die in Python eingebaute Funktion len() gibt die Länge der ersten Dimension eines NumPy-Arrays zurück. Bei einem zweidimensionalen Array zählt sie die Zeilen und nicht sämtliche einzelnen Werte.

Der Code und die angezeigten Bezeichnungen oder Ausgaben in diesem Abschnitt bleiben auf Englisch.

import numpy as np

array = np.array([[1, 3, 5], [2, 4, 6]])

num_rows = len(array)
print("Rows =", num_rows)

Ausgabe:

Rows = 2

Hier ist jedes Element entlang der ersten Achse eine Zeile mit drei Werten. len(array) steht daher für dieselbe Anzahl wie array.shape[0]. Verwenden Sie nicht len(array[0]), um die Zeilen zu zählen: Dieser Ausdruck misst die Länge der ersten Zeile und setzt außerdem voraus, dass mindestens eine Zeile vorhanden ist.

Ein Array mit der Form (0, 3) hat keine Zeilen; daher ergeben sowohl len(array) als auch array.shape[0] den Wert 0. Ein skalares Array hat keine erste Achse, sodass keiner der beiden Ausdrücke eine Zeilenanzahl liefert.

Zeilenanzahl eines NumPy-Arrays mit der Funktion np.size() ermitteln

Die Funktion np.size() akzeptiert ein Array und ein optionales ganzzahliges Argument axis. Geben Sie axis=0 an, um die Länge der ersten Dimension zu erhalten. Die Positionsangabe np.size(array, 0) ist gleichwertig.

Der Code und die angezeigten Bezeichnungen oder Ausgaben in diesem Abschnitt bleiben auf Englisch.

import numpy as np

array = np.array([[1, 3, 5], [2, 4, 6]])

num_rows = np.size(array, 0)
print("Rows =", num_rows)

Ausgabe:

Rows = 2

Wenn Sie axis weglassen, wird eine andere Größe abgefragt: np.size(array) zählt alle Elemente. Bei diesem Array mit zwei Zeilen und drei Spalten beträgt die Gesamtzahl 6, während die Länge der ersten Achse 2 ist. Ebenso liefert np.size(array, axis=1) bei einem zweidimensionalen Array die Anzahl der Spalten. Das Argument axis wählt eine Dimension aus; es ist kein Tupel von Achsen.

Fazit

Verwenden Sie array.shape[0], um die Zeilen eines zweidimensionalen NumPy-Arrays direkt zu zählen. len(array) und np.size(array, 0) liefern dieselbe Anzahl; np.size(array) gibt die Gesamtzahl der Elemente zurück.