NumPy- Array-Slicing


Arrays schneiden

Slicing in Python bedeutet, Elemente von einem gegebenen Index zu einem anderen gegebenen Index zu nehmen.

Wir übergeben Slice statt Index wie folgt: .[start:end]

Wir können den Schritt auch so definieren: .[start:end:step]

Wenn wir den Start nicht bestehen, gilt er als 0

Wenn wir es nicht übergeben, endet die berücksichtigte Länge des Arrays in dieser Dimension

Wenn wir Schritt nicht bestehen, gilt dies als 1

Beispiel

Schneiden Sie Elemente von Index 1 bis Index 5 aus dem folgenden Array:

import numpy as np

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

print(arr[1:5])

Hinweis: Das Ergebnis enthält den Startindex, aber nicht den Endindex .

Beispiel

Slice-Elemente von Index 4 bis zum Ende des Arrays:

import numpy as np

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

print(arr[4:])

Beispiel

Slice-Elemente von Anfang bis Index 4 (nicht enthalten):

import numpy as np

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

print(arr[:4])


Negatives Schneiden

Verwenden Sie den Minus-Operator, um vom Ende auf einen Index zu verweisen:

Beispiel

Slice von Index 3 vom Ende bis Index 1 vom Ende:

import numpy as np

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

print(arr[-3:-1])

SCHRITT

Verwenden Sie den stepWert, um den Schritt des Slicing zu bestimmen:

Beispiel

Geben Sie jedes andere Element von Index 1 bis Index 5 zurück:

import numpy as np

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

print(arr[1:5:2])

Beispiel

Geben Sie jedes andere Element aus dem gesamten Array zurück:

import numpy as np

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

print(arr[::2])

Slicen von 2-D-Arrays

Beispiel

Schneiden Sie vom zweiten Element aus die Elemente von Index 1 bis Index 4 (nicht enthalten):

import numpy as np

arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])

print(arr[1, 1:4])

Hinweis: Denken Sie daran, dass das zweite Element den Index 1 hat.

Beispiel

Geben Sie von beiden Elementen den Index 2 zurück:

import numpy as np

arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])

print(arr[0:2, 2])

Beispiel

Von beiden Elementen, Slice-Index 1 bis Index 4 (nicht enthalten), wird dies ein 2-D-Array zurückgeben:

import numpy as np

arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])

print(arr[0:2, 1:4])

Testen Sie sich mit Übungen

Übung:

Fügen Sie die richtige Slicing-Syntax ein, um die folgende Auswahl des Arrays zu drucken:

Alles von (einschließlich) dem zweiten Element bis (nicht einschließlich) dem fünften Element.

arr = np.array([10, 15, 20, 25, 30, 35, 40])

print(arr)