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

book2D-Arrays Sorteren

Zoals je kunt zien, sorteert het eenvoudigweg doorgeven van onze 2D-array aan de functie sort() elke 1D-array langs as 1 (dit is de standaardoptie in een 2D-array). Door axis=0 in te stellen, wordt elke 1D-array gesorteerd langs as 0 (elke kolom).

Het instellen van axis=None retourneert een aaneengesloten gesorteerde 1D-array van alle elementen van de 2D-array.

12345678
import numpy as np array_2d = np.array([[2, 9, 3], [1, 6, 4], [5, 7, 8]]) # Sorting a 2D array along axis 1 print(np.sort(array_2d)) # Sorting a 2D array along axis 0 print(np.sort(array_2d, axis=0)) # Creating a 1D sorted array out of the elements of array_2d print(np.sort(array_2d, axis=None))
copy

2D-arrays sorteren in aflopende volgorde

Bij het sorteren van 2D-arrays in aflopende volgorde langs een bepaalde as, moeten twee slices worden gebruikt: één volledige slice ([:]) en een andere met een negatieve stap ([::-1]). De positie van de slice met de negatieve stap moet overeenkomen met de as waarlangs wordt gesorteerd.

Note
Opmerking

Bij sorteren langs as 0 kan alleen een slice met een negatieve stap worden gebruikt, omdat deze al langs deze as indexeert.

12345678
import numpy as np array_2d = np.array([[2, 9, 3], [1, 6, 4], [5, 7, 8]]) # Sorting a 2D array along axis 1 in descending order print(np.sort(array_2d)[:, ::-1]) # Sorting a 2D array along axis 0 in descending order print(np.sort(array_2d, axis=0)[::-1]) # Creating a 1D sorted array out of the elements of array_2d in descending order print(np.sort(array_2d, axis=None)[::-1])
copy
Taak

Swipe to start coding

Je hebt een 2D-array genaamd exam_scores met de scores voor elk examen van een bepaald vak. Elke kolom vertegenwoordigt een specifiek vak, en elke rij vertegenwoordigt een individuele student. Een specifieke rij toont dus de scores van die student voor elk examen.

  1. Maak een 2D NumPy-array genaamd top_scores_subject op basis van exam_scores, waarbij elke kolom (die een bepaald vak weergeeft) is gesorteerd op scores in aflopende volgorde.
  2. Maak een 1D NumPy-array genaamd sorted_scores op basis van exam_scores, die alle scores bevat gesorteerd in oplopende volgorde.

Hierdoor kun je eenvoudig de hoogste scores per examen en de laagste scores over alle examens identificeren.

Oplossing

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 3. Hoofdstuk 2
single

single

Vraag AI

expand

Vraag AI

ChatGPT

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

close

Awesome!

Completion rate improved to 3.7

book2D-Arrays Sorteren

Veeg om het menu te tonen

Zoals je kunt zien, sorteert het eenvoudigweg doorgeven van onze 2D-array aan de functie sort() elke 1D-array langs as 1 (dit is de standaardoptie in een 2D-array). Door axis=0 in te stellen, wordt elke 1D-array gesorteerd langs as 0 (elke kolom).

Het instellen van axis=None retourneert een aaneengesloten gesorteerde 1D-array van alle elementen van de 2D-array.

12345678
import numpy as np array_2d = np.array([[2, 9, 3], [1, 6, 4], [5, 7, 8]]) # Sorting a 2D array along axis 1 print(np.sort(array_2d)) # Sorting a 2D array along axis 0 print(np.sort(array_2d, axis=0)) # Creating a 1D sorted array out of the elements of array_2d print(np.sort(array_2d, axis=None))
copy

2D-arrays sorteren in aflopende volgorde

Bij het sorteren van 2D-arrays in aflopende volgorde langs een bepaalde as, moeten twee slices worden gebruikt: één volledige slice ([:]) en een andere met een negatieve stap ([::-1]). De positie van de slice met de negatieve stap moet overeenkomen met de as waarlangs wordt gesorteerd.

Note
Opmerking

Bij sorteren langs as 0 kan alleen een slice met een negatieve stap worden gebruikt, omdat deze al langs deze as indexeert.

12345678
import numpy as np array_2d = np.array([[2, 9, 3], [1, 6, 4], [5, 7, 8]]) # Sorting a 2D array along axis 1 in descending order print(np.sort(array_2d)[:, ::-1]) # Sorting a 2D array along axis 0 in descending order print(np.sort(array_2d, axis=0)[::-1]) # Creating a 1D sorted array out of the elements of array_2d in descending order print(np.sort(array_2d, axis=None)[::-1])
copy
Taak

Swipe to start coding

Je hebt een 2D-array genaamd exam_scores met de scores voor elk examen van een bepaald vak. Elke kolom vertegenwoordigt een specifiek vak, en elke rij vertegenwoordigt een individuele student. Een specifieke rij toont dus de scores van die student voor elk examen.

  1. Maak een 2D NumPy-array genaamd top_scores_subject op basis van exam_scores, waarbij elke kolom (die een bepaald vak weergeeft) is gesorteerd op scores in aflopende volgorde.
  2. Maak een 1D NumPy-array genaamd sorted_scores op basis van exam_scores, die alle scores bevat gesorteerd in oplopende volgorde.

Hierdoor kun je eenvoudig de hoogste scores per examen en de laagste scores over alle examens identificeren.

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 3. Hoofdstuk 2
single

single

some-alt