Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Apprendre Tri des Tableaux | Fonctions NumPy Couramment Utilisées
Numpy Ultime
course content

Contenu du cours

Numpy Ultime

Numpy Ultime

1. Bases de NumPy
2. Indexation et Découpage
3. Fonctions NumPy Couramment Utilisées
4. Math avec NumPy

book
Tri des Tableaux

Cette opération est extrêmement utile car la recherche dans un tableau trié est beaucoup plus rapide parce que des algorithmes efficaces comme la recherche binaire fonctionnent uniquement avec des tableaux triés.

Fonction numpy.sort()

NumPy a une fonction intégrée sort() pour trier les éléments par valeurs dans l'ordre croissant. La valeur de retour de cette fonction est un tableau NumPy trié. Voici sa syntaxe générale : numpy.sort(a, axis=-1, kind=None, order=None), où :

  • a est un tableau ;
  • axis est l'axe le long duquel trier (dernier axe (-1) par défaut) ;
  • kind est l'algorithme de tri à utiliser (quicksort par défaut).
123
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) print(np.sort(array_1d))
copy

méthode ndarray.sort()

Comme nous l'avons déjà mentionné, la fonction numpy.sort() renvoie un tableau trié mais ne modifie pas le tableau original. Si nous voulions modifier le tableau, nous devrions écrire array = np.sort(array).

Cependant, NumPy fournit une méthode .sort() en alternative, qui trie le tableau en place et ne renvoie pas un nouveau tableau (elle renvoie None, ce qui signifie qu'elle ne renvoie rien). Sa syntaxe est similaire à la fonction sort().

Remarque

Une fonction est un bloc de code autonome qui effectue une tâche spécifique et peut être appelé directement. Une méthode est une fonction associée à un objet et est appelée sur cet objet, en utilisant l'opérateur ..

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

Après avoir appelé la méthode .sort(), array_1d a été trié en place et contient maintenant des éléments triés par ordre croissant.

Tri des tableaux 1D par ordre décroissant

Parfois, nous pouvons vouloir trier un tableau par ordre décroissant. Ni la méthode .sort() ni la fonction sort() ne prennent en charge cette fonctionnalité directement. Cependant, nous pouvons simplement utiliser le slicing avec un step égal à -1 sur un tableau trié :

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
Tâche

Swipe to start coding

Vous gérez un ensemble de données de salaires d'employés stockés dans le tableau salaries.

  1. Triez les salaires par ordre décroissant en utilisant la fonction appropriée.
  2. Imprimez les 3 salaires les plus élevés en utilisant une tranche et en spécifiant uniquement une end positive.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 1
toggle bottom row

book
Tri des Tableaux

Cette opération est extrêmement utile car la recherche dans un tableau trié est beaucoup plus rapide parce que des algorithmes efficaces comme la recherche binaire fonctionnent uniquement avec des tableaux triés.

Fonction numpy.sort()

NumPy a une fonction intégrée sort() pour trier les éléments par valeurs dans l'ordre croissant. La valeur de retour de cette fonction est un tableau NumPy trié. Voici sa syntaxe générale : numpy.sort(a, axis=-1, kind=None, order=None), où :

  • a est un tableau ;
  • axis est l'axe le long duquel trier (dernier axe (-1) par défaut) ;
  • kind est l'algorithme de tri à utiliser (quicksort par défaut).
123
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) print(np.sort(array_1d))
copy

méthode ndarray.sort()

Comme nous l'avons déjà mentionné, la fonction numpy.sort() renvoie un tableau trié mais ne modifie pas le tableau original. Si nous voulions modifier le tableau, nous devrions écrire array = np.sort(array).

Cependant, NumPy fournit une méthode .sort() en alternative, qui trie le tableau en place et ne renvoie pas un nouveau tableau (elle renvoie None, ce qui signifie qu'elle ne renvoie rien). Sa syntaxe est similaire à la fonction sort().

Remarque

Une fonction est un bloc de code autonome qui effectue une tâche spécifique et peut être appelé directement. Une méthode est une fonction associée à un objet et est appelée sur cet objet, en utilisant l'opérateur ..

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

Après avoir appelé la méthode .sort(), array_1d a été trié en place et contient maintenant des éléments triés par ordre croissant.

Tri des tableaux 1D par ordre décroissant

Parfois, nous pouvons vouloir trier un tableau par ordre décroissant. Ni la méthode .sort() ni la fonction sort() ne prennent en charge cette fonctionnalité directement. Cependant, nous pouvons simplement utiliser le slicing avec un step égal à -1 sur un tableau trié :

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
Tâche

Swipe to start coding

Vous gérez un ensemble de données de salaires d'employés stockés dans le tableau salaries.

  1. Triez les salaires par ordre décroissant en utilisant la fonction appropriée.
  2. Imprimez les 3 salaires les plus élevés en utilisant une tranche et en spécifiant uniquement une end positive.

Solution

Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
Tout était clair ?

Comment pouvons-nous l'améliorer ?

Merci pour vos commentaires !

Section 3. Chapitre 1
Switch to desktopPassez à un bureau pour une pratique réelleContinuez d'où vous êtes en utilisant l'une des options ci-dessous
We're sorry to hear that something went wrong. What happened?
some-alt