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 is, 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 geretourneerde waarde van deze functie is een gesorteerde NumPy array. De algemene syntaxis is: 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 verandert deze niet de originele array. Als we de array daadwerkelijk willen wijzigen, moeten we array = np.sort(array) schrijven.

Echter, NumPy biedt als alternatief een .sort() methode, die de array in-place sorteert en geen nieuwe array retourneert (deze retourneert None, wat betekent dat er niets wordt teruggegeven). 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 gewenst 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 een step van -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 top 3 salarissen met een slice waarbij alleen een positieve end wordt opgegeven.

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 is, 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 geretourneerde waarde van deze functie is een gesorteerde NumPy array. De algemene syntaxis is: 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 verandert deze niet de originele array. Als we de array daadwerkelijk willen wijzigen, moeten we array = np.sort(array) schrijven.

Echter, NumPy biedt als alternatief een .sort() methode, die de array in-place sorteert en geen nieuwe array retourneert (deze retourneert None, wat betekent dat er niets wordt teruggegeven). 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 gewenst 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 een step van -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 top 3 salarissen met een slice waarbij alleen een positieve end wordt opgegeven.

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