Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Leer Snijden | Indexeren en Snijden
Ultieme NumPy

Veeg om het menu te tonen

book
Snijden

Slicing in Python verwijst naar het ophalen van elementen van de ene index naar de andere binnen een reeks. In dit hoofdstuk zullen we ons echter richten 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 (de index zelf is niet inbegrepen);

  • step specificeert de stappen tussen de indices (standaard is 1).

Hier is een voorbeeld om alles te verduidelijken (paarse vierkanten vertegenwoordigen de elementen die worden opgehaald door slicing):

Opmerking

Omdat we step niet expliciet hebben gespecificeerd, 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:])
copy

Start, Eind en Stap weglaten

Zoals je kunt zien, kunnen we vaak start, end, step, of zelfs allemaal tegelijk weglaten. Bijvoorbeeld, step kan worden weggelaten wanneer we willen dat het gelijk is aan 1. start en end kunnen in de volgende scenario's worden weggelaten:

  1. Weglaten van start:

    • Slicing vanaf het eerste element (step is positief);

    • Slicing vanaf het laatste element (step is negatief).

  2. Weglaten van end:

    • Slicing tot het laatste element inclusief (step is positief);

    • Slicing tot het eerste element inclusief (step is negatief).

Laten we een paar meer voorbeelden bekijken (de zwarte pijl geeft aan dat de elementen in omgekeerde volgorde worden genomen):

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

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

Taak

Swipe to start coding

Je analyseert de dagelijkse verkoopgegevens van een kleine winkel. De verkopen van de afgelopen week zijn opgeslagen in de weekly_sales array, waarbij elk element de verkoop voor een specifieke dag vertegenwoordigt.

  1. Maak een slice van weekly_sales die de verkoopgegevens voor elke tweede dag bevat, te beginnen vanaf 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
Onze excuses dat er iets mis is gegaan. Wat is er gebeurd?

Vraag AI

expand
ChatGPT

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

book
Snijden

Slicing in Python verwijst naar het ophalen van elementen van de ene index naar de andere binnen een reeks. In dit hoofdstuk zullen we ons echter richten 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 (de index zelf is niet inbegrepen);

  • step specificeert de stappen tussen de indices (standaard is 1).

Hier is een voorbeeld om alles te verduidelijken (paarse vierkanten vertegenwoordigen de elementen die worden opgehaald door slicing):

Opmerking

Omdat we step niet expliciet hebben gespecificeerd, 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:])
copy

Start, Eind en Stap weglaten

Zoals je kunt zien, kunnen we vaak start, end, step, of zelfs allemaal tegelijk weglaten. Bijvoorbeeld, step kan worden weggelaten wanneer we willen dat het gelijk is aan 1. start en end kunnen in de volgende scenario's worden weggelaten:

  1. Weglaten van start:

    • Slicing vanaf het eerste element (step is positief);

    • Slicing vanaf het laatste element (step is negatief).

  2. Weglaten van end:

    • Slicing tot het laatste element inclusief (step is positief);

    • Slicing tot het eerste element inclusief (step is negatief).

Laten we een paar meer voorbeelden bekijken (de zwarte pijl geeft aan dat de elementen in omgekeerde volgorde worden genomen):

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

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

Taak

Swipe to start coding

Je analyseert de dagelijkse verkoopgegevens van een kleine winkel. De verkopen van de afgelopen week zijn opgeslagen in de weekly_sales array, waarbij elk element de verkoop voor een specifieke dag vertegenwoordigt.

  1. Maak een slice van weekly_sales die de verkoopgegevens voor elke tweede dag bevat, te beginnen vanaf 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
Switch to desktopSchakel over naar desktop voor praktijkervaringGa verder vanaf waar je bent met een van de onderstaande opties
Onze excuses dat er iets mis is gegaan. Wat is er gebeurd?
some-alt