Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Slicing | Indexeren en Slicen
Numpy Basisprincipes
Sectie 2. Hoofdstuk 3
single

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].

  • start is de index waarop het slicen begint;
  • end is de index waarop het slicen eindigt (deze index zelf wordt niet meegenomen);
  • step geeft de stappen tussen de indices aan (standaard is 1).

Hieronder een voorbeeld ter verduidelijking (paarse vierkanten geven de elementen weer die door slicing worden opgehaald):

Voorbeeld van 1D-slicing
Note
Opmerking

Aangezien je step niet expliciet hebt opgegeven, is de standaardwaarde 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:])

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:

  1. start weglaten:
    • Slicing vanaf het eerste element (step is positief);
    • Slicing vanaf het laatste element (step is negatief).
  2. end weglaten:
    • Slicing tot en met het laatste element (step is positief);
    • Slicing tot en met het eerste element (step is negatief).

Bekijk nog een paar voorbeelden (de zwarte pijl geeft aan dat de elementen in omgekeerde volgorde worden genomen):

Voorbeeld van 1D-slicing
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[:])

De onderstaande afbeelding toont de structuur van de array weekly_sales die in de opdracht wordt gebruikt:

Wekelijkse verkoop
Taak

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.

  1. Maak een slice van weekly_sales die de verkoopgegevens bevat van elke tweede dag, beginnend bij de tweede dag (dinsdag).
  2. Gebruik een positieve index voor de start en laat de end ongespecificeerd.
  3. Sla het resultaat op in alternate_day_sales.

Oplossing

Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 2. Hoofdstuk 3
single

single

Vraag AI

expand

Vraag AI

ChatGPT

Vraag wat u wilt of probeer een van de voorgestelde vragen om onze chat te starten.

some-alt