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

Veeg om het menu te tonen

book
Arrays Sorteren

Deze operatie is uiterst nuttig omdat zoeken in een gesorteerde array veel sneller is, omdat 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 waarden in oplopende volgorde. De retourwaarde 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 moet worden (laatste as (-1) standaard);

  • kind het sorteeralgoritme is dat moet worden gebruikt (quicksort standaard).

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 we al eerder hebben vermeld, retourneert de functie numpy.sort() een gesorteerde array, maar verandert het de originele array niet. Als we de array wilden veranderen, zouden we array = np.sort(array) moeten schrijven.

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

Opmerking

Een functie is een op zichzelf staand blok code dat een specifieke taak uitvoert en direct kan worden aangeroepen. Een methode is een functie die is geassocieerd met 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 plaats gesorteerd en bevat nu elementen in oplopende volgorde.

Sorteren van 1D-arrays in Aflopende Volgorde

Soms willen we een array in aflopende volgorde 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 van werknemerssalarissen opgeslagen in de salaries array.

  1. Sorteer de salarissen in aflopende volgorde met behulp van de juiste functie.
  2. Print de top 3 salarissen met behulp van een slice en specificeer alleen een positief end.

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
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
Arrays Sorteren

Deze operatie is uiterst nuttig omdat zoeken in een gesorteerde array veel sneller is, omdat 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 waarden in oplopende volgorde. De retourwaarde 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 moet worden (laatste as (-1) standaard);

  • kind het sorteeralgoritme is dat moet worden gebruikt (quicksort standaard).

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 we al eerder hebben vermeld, retourneert de functie numpy.sort() een gesorteerde array, maar verandert het de originele array niet. Als we de array wilden veranderen, zouden we array = np.sort(array) moeten schrijven.

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

Opmerking

Een functie is een op zichzelf staand blok code dat een specifieke taak uitvoert en direct kan worden aangeroepen. Een methode is een functie die is geassocieerd met 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 plaats gesorteerd en bevat nu elementen in oplopende volgorde.

Sorteren van 1D-arrays in Aflopende Volgorde

Soms willen we een array in aflopende volgorde 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 van werknemerssalarissen opgeslagen in de salaries array.

  1. Sorteer de salarissen in aflopende volgorde met behulp van de juiste functie.
  2. Print de top 3 salarissen met behulp van een slice en specificeer alleen een positief end.

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