Le tri d'un tableau est une étape très importante dans l'analyse des données car il facilite le classement des données et facilite la recherche et le nettoyage.
Dans ce tutoriel, nous apprendrons comment trier un tableau dans NumPy . Vous pouvez trier un tableau dans NumPy :
- Utilisation de la fonction np.sort()
- tri en ligne
- trier selon différents axes
- Utilisation de la fonction np.argsort()
- Utilisation de la fonction np.lexsort()
Utilisation de la fonction sort()
La méthode sort() trie l'élément d'une structure de données donnée (ici un tableau). Appelez la fonction de tri avec l'objet tableau pour trier les éléments.
Il existe deux cas de tri de tableau avec la méthode sort() :
- Trier le tableau NumPy en place
- Trier le tableau NumPy le long des axes
Nous couvrirons ces deux méthodes avec un exemple ci-dessous :
Trier le tableau sur place
Trier un tableau sur place signifie trier directement les éléments du tableau d'origine.
Il ne crée pas de nouvelle copie de tableau et est très économe en mémoire.
exemple de liste en java
Exemple
Utilisation de la méthode sort() pour trier les éléments du tableau NumPy en place.
Python3
# importing libraries> import> numpy as np> > a>=> np.array([>12>,>15>,>10>,>1>])> print>(>'Array before sorting'>,a)> a.sort()> print>(>'Array after sorting'>,a)> |
>
>
Sortir:
Array before sorting [12 15 10 1] Array after sorting [ 1 10 12 15]>
Trier le tableau selon différents axes
Cette méthode crée une copie triée du tableau NumPy donné.
Il est principalement utilisé dans un tableau multidimensionnel lorsque vous souhaitez trier selon une dimension donnée.
Exemple
Utilisation de la méthode sort() pour les éléments du tableau NumPy le long de l'axe
PowerShell inférieur ou égal à
Python3
# importing libraries> import> numpy as np> # sort along the first axis> a>=> np.array([[>12>,>15>], [>10>,>1>]])> arr1>=> np.sort(a, axis>=> 0>)> print> (>'Along first axis :
'>, arr1)> # sort along the last axis> a>=> np.array([[>10>,>15>], [>12>,>1>]])> arr2>=> np.sort(a, axis>=> ->1>)> print> (>'
Along first axis :
'>, arr2)> a>=> np.array([[>12>,>15>], [>10>,>1>]])> arr1>=> np.sort(a, axis>=> None>)> print> (>'
Along none axis :
'>, arr1)> |
>
>
Sortir:
Along first axis : [[10 1] [12 15]]Along first axis : [[10 15] [ 1 12]]Along none axis : [ 1 10 12 15]>
Utiliser argsort()
Méthode argsort() est une manière indirecte de trier le tableau NumPy le long d'un axe donné.
Il renvoie un tableau d'indices cela trierait le tableau d'origine par ordre croissant.
date et heure dactylographiées
Exemple
Utiliser argsort() pour trier les éléments du tableau NumPy
Python3
import> numpy as np> > # Numpy array created> a>=> np.array([>9>,>3>,>1>,>7>,>4>,>3>,>6>])> > # unsorted array print> print>(>'Original array:
'>, a)> > # Sort array indices> b>=> np.argsort(a)> print>(>'Sorted indices of original array->'>, b)> > # To get sorted array using sorted indices> # c is temp array created of same len as of b> c>=> np.zeros(>len>(b), dtype>=> int>)> for> i>in> range>(>0>,>len>(b)):> >c[i]>=> a[b[i]]> print>(>'Sorted array->'>, c)> |
>
>
Sortir:
Original array: [9 3 1 7 4 3 6] Sorted indices of original array->[2 1 5 4 6 3 0] Tableau trié -> [1 3 3 4 6 7 9]>
Utilisation de la séquence de clés
Trier un tableau à l'aide d'une séquence de clés nous permet de trier un tableau en fonction de plusieurs critères.
Vous pouvez utiliser cette méthode avec la fonction np.lexsort(). La fonction lexsort() renvoie un tableau d'indices qui trieraient le tableau d'origine.
Exemple
Obtenez un tri stable à l'aide d'une séquence de clés.
Python3
import> numpy as np> > # Numpy array created> # First column> a>=> np.array([>9>,>3>,>1>,>3>,>4>,>3>,>6>])> > # Second column> b>=> np.array([>4>,>6>,>9>,>2>,>1>,>8>,>7>])> print>(>'column a, column b'>)> for> (i, j)>in> zip>(a, b):> >print>(i,>' '>, j)> > # Sort by a then by b> ind>=> np.lexsort((b, a))> print>(>'Sorted indices->'>, ind)> |
>
année mois
>
Sortir:
column a, column b 9 4 3 6 1 9 3 2 4 1 3 8 6 7 Sorted indices->[2 3 1 5 4 6 0]>
Vérifiez également : Tri, recherche et comptage dans NumPy
Conclusion
Le tri du tableau NumPy facilite la recherche des éléments en double, maximum et minimum. Il s’agit d’une opération essentielle de manipulation de données, facilitant le travail avec les données.
Dans ce didacticiel, nous avons couvert trois méthodes permettant de trier un tableau dans NumPy, à savoir sort(), argsort() et lexsort(). Toutes ces méthodes fournissent différentes fonctionnalités pour trier ndarray dans NumPy. Nous avons expliqué les méthodes avec des mots simples avec des exemples pour vous donner une compréhension complète du sujet.