Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lernen Slicing | Indizierung und Slicing
Ultimatives NumPy

bookSlicing

Slicing in Python bezeichnet das Abrufen von Elementen von einem Index zum anderen innerhalb einer Sequenz. In diesem Kapitel konzentrieren wir uns jedoch auf das Slicing in NumPy-Arrays.

Slicing in 1D-Arrays

Die allgemeine Syntax für das Slicing in 1D-Arrays lautet: array[start:end:step].

  • start ist der Index, an dem das Slicing beginnt;
  • end ist der Index, an dem das Slicing endet (der Index selbst ist nicht enthalten);
  • step gibt die Schritte zwischen den Indizes an (Standardwert ist 1).

Hier ist ein Beispiel zur Verdeutlichung (lila Quadrate stellen die durch das Slicing abgerufenen Elemente dar):

Note
Hinweis

Da wir step nicht explizit angegeben haben, ist der Standardwert 1.

123456789
import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the element at index 2 to the element at index 4 exclusive print(array[2:4]) # Slicing from the first element to the element at index 5 exclusive print(array[:5]) # Slicing from the element at index 5 to the last element inclusive print(array[5:])
copy

Auslassen von Start, Ende und Schritt

Wie ersichtlich, können wir häufig Start (start), Ende (end), Schritt (step) oder sogar alle gleichzeitig auslassen. Beispielsweise kann step ausgelassen werden, wenn dieser gleich 1 sein soll. start und end können in folgenden Szenarien ausgelassen werden:

  1. Auslassen von start:
    • Slicing ab dem ersten Element (step ist positiv);
    • Slicing ab dem letzten Element (step ist negativ).
  2. Auslassen von end:
    • Slicing bis zum letzten Element inklusive (step ist positiv);
    • Slicing bis zum ersten Element inklusive (step ist negativ).

Im Folgenden werden weitere Beispiele betrachtet (der schwarze Pfeil zeigt an, dass die Elemente in umgekehrter Reihenfolge entnommen werden):

1234567891011
import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the first element to the last element inclusive with step=2 print(array[::2]) # Slicing from the element at index 4 to the element at index 2 exclusive (step=-1) print(array[4:2:-1]) # Slicing from the last element to the first element inclusive (reversed array) print(array[::-1]) # Slicing from the first element to the last inclusive (the same as our array) print(array[:])
copy

Das folgende Bild zeigt die Struktur des in der Aufgabe verwendeten Arrays weekly_sales:

Aufgabe

Swipe to start coding

Sie analysieren die täglichen Verkaufsdaten eines kleinen Einzelhandelsgeschäfts. Die Verkäufe der vergangenen Woche sind im Array weekly_sales gespeichert, wobei jedes Element die Verkäufe eines bestimmten Tages repräsentiert.

  1. Erstellen Sie einen Slice von weekly_sales, der die Verkaufsdaten für jeden zweiten Tag enthält, beginnend mit dem zweiten Tag (Dienstag).
  2. Verwenden Sie einen positiven Index für start und lassen Sie das end-Argument unbestimmt.
  3. Speichern Sie das Ergebnis in alternate_day_sales.

Lösung

War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 3
single

single

Fragen Sie AI

expand

Fragen Sie AI

ChatGPT

Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen

close

Awesome!

Completion rate improved to 3.7

bookSlicing

Swipe um das Menü anzuzeigen

Slicing in Python bezeichnet das Abrufen von Elementen von einem Index zum anderen innerhalb einer Sequenz. In diesem Kapitel konzentrieren wir uns jedoch auf das Slicing in NumPy-Arrays.

Slicing in 1D-Arrays

Die allgemeine Syntax für das Slicing in 1D-Arrays lautet: array[start:end:step].

  • start ist der Index, an dem das Slicing beginnt;
  • end ist der Index, an dem das Slicing endet (der Index selbst ist nicht enthalten);
  • step gibt die Schritte zwischen den Indizes an (Standardwert ist 1).

Hier ist ein Beispiel zur Verdeutlichung (lila Quadrate stellen die durch das Slicing abgerufenen Elemente dar):

Note
Hinweis

Da wir step nicht explizit angegeben haben, ist der Standardwert 1.

123456789
import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the element at index 2 to the element at index 4 exclusive print(array[2:4]) # Slicing from the first element to the element at index 5 exclusive print(array[:5]) # Slicing from the element at index 5 to the last element inclusive print(array[5:])
copy

Auslassen von Start, Ende und Schritt

Wie ersichtlich, können wir häufig Start (start), Ende (end), Schritt (step) oder sogar alle gleichzeitig auslassen. Beispielsweise kann step ausgelassen werden, wenn dieser gleich 1 sein soll. start und end können in folgenden Szenarien ausgelassen werden:

  1. Auslassen von start:
    • Slicing ab dem ersten Element (step ist positiv);
    • Slicing ab dem letzten Element (step ist negativ).
  2. Auslassen von end:
    • Slicing bis zum letzten Element inklusive (step ist positiv);
    • Slicing bis zum ersten Element inklusive (step ist negativ).

Im Folgenden werden weitere Beispiele betrachtet (der schwarze Pfeil zeigt an, dass die Elemente in umgekehrter Reihenfolge entnommen werden):

1234567891011
import numpy as np array = np.array([5, 10, 2, 8, 9, 1, 0, 4]) print(f'Initial array: {array}') # Slicing from the first element to the last element inclusive with step=2 print(array[::2]) # Slicing from the element at index 4 to the element at index 2 exclusive (step=-1) print(array[4:2:-1]) # Slicing from the last element to the first element inclusive (reversed array) print(array[::-1]) # Slicing from the first element to the last inclusive (the same as our array) print(array[:])
copy

Das folgende Bild zeigt die Struktur des in der Aufgabe verwendeten Arrays weekly_sales:

Aufgabe

Swipe to start coding

Sie analysieren die täglichen Verkaufsdaten eines kleinen Einzelhandelsgeschäfts. Die Verkäufe der vergangenen Woche sind im Array weekly_sales gespeichert, wobei jedes Element die Verkäufe eines bestimmten Tages repräsentiert.

  1. Erstellen Sie einen Slice von weekly_sales, der die Verkaufsdaten für jeden zweiten Tag enthält, beginnend mit dem zweiten Tag (Dienstag).
  2. Verwenden Sie einen positiven Index für start und lassen Sie das end-Argument unbestimmt.
  3. Speichern Sie das Ergebnis in alternate_day_sales.

Lösung

Switch to desktopWechseln Sie zum Desktop, um in der realen Welt zu übenFahren Sie dort fort, wo Sie sind, indem Sie eine der folgenden Optionen verwenden
War alles klar?

Wie können wir es verbessern?

Danke für Ihr Feedback!

Abschnitt 2. Kapitel 3
single

single

some-alt