Contenu du cours
Numpy Ultime
Numpy Ultime
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).
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) print(np.sort(array_1d))
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
.
.
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Calling the .sort() method array_1d.sort() print(array_1d)
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é :
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)
Swipe to start coding
Vous gérez un ensemble de données de salaires d'employés stockés dans le tableau salaries
.
- Triez les salaires par ordre décroissant en utilisant la fonction appropriée.
- Imprimez les 3 salaires les plus élevés en utilisant une tranche et en spécifiant uniquement une
end
positive.
Solution
Merci pour vos commentaires !
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).
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) print(np.sort(array_1d))
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
.
.
import numpy as np array_1d = np.array([10, 2, 5, 1, 6, 5]) # Calling the .sort() method array_1d.sort() print(array_1d)
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é :
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)
Swipe to start coding
Vous gérez un ensemble de données de salaires d'employés stockés dans le tableau salaries
.
- Triez les salaires par ordre décroissant en utilisant la fonction appropriée.
- Imprimez les 3 salaires les plus élevés en utilisant une tranche et en spécifiant uniquement une
end
positive.
Solution
Merci pour vos commentaires !