single
Slicing
Swipe um das Menü anzuzeigen
Slicing in Python bezeichnet das Abrufen von Elementen von einem Index bis zu einem 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 Slicing in 1D-Arrays lautet: array[start:end:step].
startist der Index, bei dem das Slicing beginnt;endist der Index, bei dem das Slicing endet (der Index selbst ist nicht enthalten);stepgibt die Schritte zwischen den Indizes an (Standardwert ist1).
Hier ein Beispiel zur Veranschaulichung (lilafarbene Felder stellen die durch das Slicing abgerufenen Elemente dar):
Da wir step nicht explizit angegeben haben, ist der Standardwert 1.
123456789import 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:])
Start-, End- und Schrittwert weglassen
Wie Sie sehen, können wir häufig die start, end und step weglassen, oder sogar alle gleichzeitig.
Zum Beispiel kann der step-Wert weggelassen werden, wenn er 1 sein soll.
start und end können in folgenden Szenarien weggelassen werden:
- Weglassen von
start:- Slicing vom ersten Element aus (
stepist positiv); - Slicing vom letzten Element aus (
stepist negativ).
- Slicing vom ersten Element aus (
- Weglassen von
end:- Slicing bis zum letzten Element inklusive (
stepist positiv); - Slicing bis zum ersten Element inklusive (
stepist negativ).
- Slicing bis zum letzten Element inklusive (
Schauen wir uns noch ein paar weitere Beispiele an (der schwarze Pfeil zeigt an, dass die Elemente in umgekehrter Reihenfolge genommen werden):
1234567891011import 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[:])
Die folgende Abbildung zeigt die Struktur des in der Aufgabe verwendeten Arrays weekly_sales:
Wischen, um mit dem Codieren zu beginnen
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.
- Erstellen Sie einen Slice von
weekly_sales, der die Verkaufsdaten für jeden zweiten Tag enthält, beginnend mit dem zweiten Tag (Dienstag). - Verwenden Sie einen positiven Index für den
start-Wert und lassen Sie dasend-Argument unausgefüllt. - Speichern Sie das Ergebnis in
alternate_day_sales.
Lösung
Danke für Ihr Feedback!
single
Fragen Sie AI
Fragen Sie AI
Fragen Sie alles oder probieren Sie eine der vorgeschlagenen Fragen, um unser Gespräch zu beginnen