logo

Tri des tableaux NumPy | Comment trier le tableau NumPy

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.