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

bookArrays Sorteren

Note
Definitie

Sorteren betekent het rangschikken van de elementen van een array in een bepaalde volgorde.

Deze bewerking is uiterst nuttig omdat zoeken in een gesorteerde array veel sneller gaat, aangezien efficiënte algoritmen zoals binaire zoekopdracht alleen werken met gesorteerde arrays.

numpy.sort() functie

NumPy heeft een ingebouwde functie sort() voor het sorteren van elementen op waarde in oplopende volgorde. De returnwaarde van deze functie is een gesorteerde NumPy array. Hier is de algemene syntaxis: numpy.sort(a, axis=-1, kind=None, order=None), waarbij:

  • a een array is;
  • axis de as is waarlangs gesorteerd wordt (standaard de laatste as (-1));
  • kind het te gebruiken sorteeralgoritme is (standaard quicksort).
123
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) print(np.sort(array_1d))
copy

ndarray.sort() methode

Zoals eerder vermeld, retourneert de functie numpy.sort() een gesorteerde array, maar wijzigt het originele array niet. Als we het array daadwerkelijk willen wijzigen, moeten we array = np.sort(array) schrijven.

NumPy biedt echter een alternatieve .sort() methode, die het array in-place sorteert en geen nieuwe array retourneert (het retourneert None, wat betekent dat het niets teruggeeft). De syntaxis is vergelijkbaar met de sort() functie.

Note
Opmerking

Een functie is een op zichzelf staand codeblok dat een specifieke taak uitvoert en direct kan worden aangeroepen. Een methode is een functie die is gekoppeld aan een object en wordt aangeroepen op dat object met behulp van de .-operator.

12345
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Calling the .sort() method array_1d.sort() print(array_1d)
copy

Na het aanroepen van de .sort() methode is array_1d in-place gesorteerd en bevat nu elementen in oplopende volgorde.

Eendimensionale arrays sorteren in aflopende volgorde

Soms is het wenselijk om een array in aflopende volgorde te sorteren. Noch de .sort() methode noch de sort() functie ondersteunt deze functionaliteit direct. We kunnen echter eenvoudig slicing gebruiken met step gelijk aan -1 op een gesorteerde array:

12345
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Sorting array_1d in descending order array_1d = np.sort(array_1d)[::-1] print(array_1d)
copy
Taak

Swipe to start coding

Je beheert een dataset met salarissen van werknemers opgeslagen in de array salaries.

  1. Sorteer de salarissen in aflopende volgorde met behulp van de juiste functie.
  2. Print de 3 hoogste salarissen met behulp van een slice en geef alleen een positieve end op.

Oplossing

Was alles duidelijk?

Hoe kunnen we het verbeteren?

Bedankt voor je feedback!

Sectie 3. Hoofdstuk 1
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

bookArrays Sorteren

Veeg om het menu te tonen

Note
Definitie

Sorteren betekent het rangschikken van de elementen van een array in een bepaalde volgorde.

Deze bewerking is uiterst nuttig omdat zoeken in een gesorteerde array veel sneller gaat, aangezien efficiënte algoritmen zoals binaire zoekopdracht alleen werken met gesorteerde arrays.

numpy.sort() functie

NumPy heeft een ingebouwde functie sort() voor het sorteren van elementen op waarde in oplopende volgorde. De returnwaarde van deze functie is een gesorteerde NumPy array. Hier is de algemene syntaxis: numpy.sort(a, axis=-1, kind=None, order=None), waarbij:

  • a een array is;
  • axis de as is waarlangs gesorteerd wordt (standaard de laatste as (-1));
  • kind het te gebruiken sorteeralgoritme is (standaard quicksort).
123
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) print(np.sort(array_1d))
copy

ndarray.sort() methode

Zoals eerder vermeld, retourneert de functie numpy.sort() een gesorteerde array, maar wijzigt het originele array niet. Als we het array daadwerkelijk willen wijzigen, moeten we array = np.sort(array) schrijven.

NumPy biedt echter een alternatieve .sort() methode, die het array in-place sorteert en geen nieuwe array retourneert (het retourneert None, wat betekent dat het niets teruggeeft). De syntaxis is vergelijkbaar met de sort() functie.

Note
Opmerking

Een functie is een op zichzelf staand codeblok dat een specifieke taak uitvoert en direct kan worden aangeroepen. Een methode is een functie die is gekoppeld aan een object en wordt aangeroepen op dat object met behulp van de .-operator.

12345
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Calling the .sort() method array_1d.sort() print(array_1d)
copy

Na het aanroepen van de .sort() methode is array_1d in-place gesorteerd en bevat nu elementen in oplopende volgorde.

Eendimensionale arrays sorteren in aflopende volgorde

Soms is het wenselijk om een array in aflopende volgorde te sorteren. Noch de .sort() methode noch de sort() functie ondersteunt deze functionaliteit direct. We kunnen echter eenvoudig slicing gebruiken met step gelijk aan -1 op een gesorteerde array:

12345
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Sorting array_1d in descending order array_1d = np.sort(array_1d)[::-1] print(array_1d)
copy
Taak

Swipe to start coding

Je beheert een dataset met salarissen van werknemers opgeslagen in de array salaries.

  1. Sorteer de salarissen in aflopende volgorde met behulp van de juiste functie.
  2. Print de 3 hoogste salarissen met behulp van een slice en geef alleen een positieve end op.

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 1
single

single

some-alt