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

Veeg om het menu te tonen

book
Snijden in 2D-Arrays

Slicing in 2D en hoger-dimensionale arrays werkt vergelijkbaar met slicing in 1D arrays. Echter, in 2D arrays zijn er twee assen.

Als we slicing alleen op as 0 willen uitvoeren om 1D arrays op te halen, blijft de syntaxis hetzelfde: array[start:end:step]. Als we slicing willen uitvoeren op de elementen van deze 1D arrays (as 1), is de syntaxis als volgt: array[start:end:step, start:end:step]. In wezen komt het aantal slices overeen met het aantal dimensies van een array.

Bovendien kunnen we slicing gebruiken voor één as en basisindexering voor de andere as. Laten we een voorbeeld bekijken van 2D slicing (paarse vierkanten vertegenwoordigen de elementen die worden opgehaald door slicing, en de zwarte pijl geeft aan dat de elementen in omgekeerde volgorde worden genomen):

1234567891011
import numpy as np array_2d = np.array([ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12] ]) print(array_2d[1:]) print(array_2d[:, 0]) print(array_2d[1:, 1:-1]) print(array_2d[:-1, ::2]) print(array_2d[2, ::-1])
copy

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

Taak

Swipe to start coding

Je werkt met een 2D NumPy-array die de scores van drie studenten in drie verschillende vakken vertegenwoordigt. De scores voor elke student worden in een aparte rij opgeslagen, waarbij elk element de score in een specifiek vak vertegenwoordigt.

  1. Maak een slice van student_scores die de laatste twee scores van de eerste student (eerste rij) bevat.

  2. Gebruik basisindexering (positieve indexering) en slicing, waarbij je alleen een positieve start specificeert.

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 4

Vraag AI

expand
ChatGPT

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

book
Snijden in 2D-Arrays

Slicing in 2D en hoger-dimensionale arrays werkt vergelijkbaar met slicing in 1D arrays. Echter, in 2D arrays zijn er twee assen.

Als we slicing alleen op as 0 willen uitvoeren om 1D arrays op te halen, blijft de syntaxis hetzelfde: array[start:end:step]. Als we slicing willen uitvoeren op de elementen van deze 1D arrays (as 1), is de syntaxis als volgt: array[start:end:step, start:end:step]. In wezen komt het aantal slices overeen met het aantal dimensies van een array.

Bovendien kunnen we slicing gebruiken voor één as en basisindexering voor de andere as. Laten we een voorbeeld bekijken van 2D slicing (paarse vierkanten vertegenwoordigen de elementen die worden opgehaald door slicing, en de zwarte pijl geeft aan dat de elementen in omgekeerde volgorde worden genomen):

1234567891011
import numpy as np array_2d = np.array([ [1, 2, 3, 4], [5, 6, 7, 8], [9, 10, 11, 12] ]) print(array_2d[1:]) print(array_2d[:, 0]) print(array_2d[1:, 1:-1]) print(array_2d[:-1, ::2]) print(array_2d[2, ::-1])
copy

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

Taak

Swipe to start coding

Je werkt met een 2D NumPy-array die de scores van drie studenten in drie verschillende vakken vertegenwoordigt. De scores voor elke student worden in een aparte rij opgeslagen, waarbij elk element de score in een specifiek vak vertegenwoordigt.

  1. Maak een slice van student_scores die de laatste twee scores van de eerste student (eerste rij) bevat.

  2. Gebruik basisindexering (positieve indexering) en slicing, waarbij je alleen een positieve start specificeert.

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 4
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