single
Slicing
Veeg om het menu te tonen
Slicing in Python verwijst naar het ophalen van elementen van het ene index naar het andere binnen een reeks. In dit hoofdstuk ligt de focus echter op slicing in NumPy arrays.
Slicing in 1D-arrays
De algemene syntaxis voor slicing in 1D-arrays is als volgt: array[start:end:step].
startis de index waarop het slicen begint;endis de index waarop het slicen eindigt (deze index zelf wordt niet meegenomen);stepgeeft de stappen tussen de indices aan (standaard is1).
Hieronder een voorbeeld ter verduidelijking (paarse vierkanten geven de elementen weer die door slicing worden opgehaald):
Aangezien je step niet expliciet hebt opgegeven, is de standaardwaarde 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-, eind- en stapwaarden weglaten
Zoals je ziet, kun je vaak start, end, step of zelfs allemaal tegelijk weglaten. step kan worden weggelaten wanneer je wilt dat deze gelijk is aan 1. start en end kunnen in de volgende situaties worden weggelaten:
startweglaten:- Slicing vanaf het eerste element (
stepis positief); - Slicing vanaf het laatste element (
stepis negatief).
- Slicing vanaf het eerste element (
endweglaten:- Slicing tot en met het laatste element (
stepis positief); - Slicing tot en met het eerste element (
stepis negatief).
- Slicing tot en met het laatste element (
Bekijk nog een paar voorbeelden (de zwarte pijl geeft aan dat de elementen in omgekeerde volgorde worden genomen):
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[:])
De onderstaande afbeelding toont de structuur van de array weekly_sales die in de opdracht wordt gebruikt:
Veeg om te beginnen met coderen
Je analyseert de dagelijkse verkoopgegevens van een kleine winkel. De verkopen van de afgelopen week zijn opgeslagen in de array weekly_sales, waarbij elk element de verkoop van een specifieke dag weergeeft.
- Maak een slice van
weekly_salesdie de verkoopgegevens bevat van elke tweede dag, beginnend bij de tweede dag (dinsdag). - Gebruik een positieve index voor de
starten laat deendongespecificeerd. - Sla het resultaat op in
alternate_day_sales.
Oplossing
Bedankt voor je feedback!
single
Vraag AI
Vraag AI
Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.