Numpy NP.argsort

Numpy NP.argsort
La fonction argsort () dans Numpy vous permet d'effectuer un tri indirect d'un tableau le long d'un axe spécifié en utilisant l'algorithme de définition.

Explorons comment travailler avec la fonction Numpy Argsort ().

Numpy Argsort () Syntaxe de la fonction

La syntaxe et les paramètres de fonction sont les indicateurs suivants:

nombant.Argsort (a, axe = - 1, kind = aucun, ordre = aucun)

Paramètres
Les paramètres sont définis en fonction de leurs fonctions suivantes:

  1. A - fait référence au tableau d'entrée.
  2. Axe - Spécifie le long de lequel axe pour trier le tableau d'entrée. La valeur est définie sur -1, qui utilise le dernier index. Définissez le paramètre de l'axe sur aucun si vous souhaitez aplatir le tableau.
  3. Kind - Spécifie l'algorithme de tri. Les valeurs acceptables incluent «Quicksort», «Mergesort», «Heapsort» et «Stable». Par défaut, la fonction utilisera un algorithme de tri QuickSort.
  4. Ordre - Définit l'ordre sous lequel comparer les champs.

Valeur de retour de fonction
La fonction renvoie un tableau d'indices du tableau trié en fonction des paramètres définis.

Exemple 1 - Tri de tableau aplati

L'exemple suivant montre comment aplatir et trier le tableau en spécifiant le paramètre de l'axe comme «aucun».

# Importer Numpy
Importer Numpy comme NP
arr = [0,1,5,3,9,6,7,4,2,8]
Print ("Array non trié:", arr)
imprimer (f "Array trié: np.argsort (arr, axe = non) ")

Le code précédent renvoie un tableau avec les indices du tableau trié. Un exemple de sortie est comme indiqué ci-dessous:

Tableau non trié: [0, 1, 5, 3, 9, 6, 7, 4, 2, 8]
Trated Back: [0 1 8 3 7 2 5 6 9 4]

Exemple 2 - Tri de tableau aplati (différents algorithmes)

Considérez l'exemple ci-dessous qui montre comment trier un tableau aplati en utilisant divers algorithmes de tri:

arr = [0,1,5,3,9,6,7,4,2,8]
Quick_sort = np.argsort (arr, axe = non, kind = 'Quicksort')
Merge_sort = np.argsort (arr, axe = non, kind = 'Mergesort')
heap_sort = np.argsort (arr, axe = non, kind = 'heapsort')
stable = np.argsort (arr, axe = non, kind = 'heapsort')
print (f "Quicksort: Quick_sort \ n Mergesort: Merge_sort \ n heapsort: heap_sort \ n stable: stable")

Le code précédent utilise divers algorithmes de tri et renvoie les indices de tableau résultants.

Ce qui suit est un exemple de sortie:

Quicksort: [0 1 8 3 7 2 5 6 9 4]
Mergesort: [0 1 8 3 7 2 5 6 9 4]
Heapsort: [0 1 8 3 7 2 5 6 9 4]
ÉTABLE: [0 1 8 3 7 2 5 6 9 4]

Exemple 3 - Trier le tableau 2D le long de divers axes

Regardons un exemple dans le tri d'un tableau 2D le long de l'axe divers.

imprimer (f "axe 0: np.Argsort (arr, axe = 0) ")

Le tableau de retour est le suivant:

axe 0: [[1 1 1]
[0 0 0]]

Pour trier le long de l'axe 1, appliquez le code suivant:

imprimer (f "axe 1: np.Argsort (arr, axe = 1) ")

Cela devrait revenir à:

axe 1: [[2 1 0]
[2 1 0]]

Conclusion

Cet article sert de guide sur la façon d'utiliser la fonction argsort () dans Numpy pour trier un tableau le long d'un axe spécifique en utilisant divers algorithmes. Plus de tutoriels sont disponibles à Linux Indice.