NP NP.argumentar

NP NP.argumentar
La función argSort () en Numpy le permite realizar una clasificación indirecta de una matriz a lo largo de un eje especificado usando el algoritmo de conjunto.

Explore cómo trabajar con la función Numpy Argsort ().

Sintaxis de la función argsort () numpy

La sintaxis de la función y los parámetros son los que se muestran en lo siguiente:

numpy.Argsort (a, axis =- 1, kind = none, orden = ninguno)

Parámetros
Los parámetros se definen según sus siguientes funciones:

  1. A - se refiere a la matriz de entrada.
  2. Eje: especifica a lo largo de qué eje ordenar la matriz de entrada. El valor se establece en -1, que usa el último índice. Establezca el parámetro del eje en ninguno si desea aplanar la matriz.
  3. tipo: especifica el algoritmo de clasificación. Los valores aceptables incluyen 'Quicksort', 'Mergesort', 'HeApsort' y 'Stable'. Por defecto, la función utilizará un algoritmo de clasificación QuickSort.
  4. Orden: define el orden bajo el cual comparar los campos.

Valor de retorno de la función
La función devuelve una matriz de índices de la matriz ordenada de acuerdo con los parámetros establecidos.

Ejemplo 1 - clasificación de matriz aplanada

El siguiente ejemplo muestra cómo aplanar y ordenar la matriz especificando el parámetro del eje como "ninguno".

# Importar Numpy
importar numpy como np
arr = [0,1,5,3,9,6,7,4,2,8]
Imprimir ("Matriz sin clasificar:", arr)
Impresión (F "Array Ordenada: NP.argsort (arr, axis = none) ")

El código anterior devuelve una matriz con los índices de la matriz ordenada. Una salida de ejemplo es como se muestra a continuación:

Matriz sin clasificar: [0, 1, 5, 3, 9, 6, 7, 4, 2, 8]
Matriz ordenada: [0 1 8 3 7 2 5 6 9 4]

Ejemplo 2: clasificación de matriz aplanada (algoritmos diferentes)

Considere el siguiente ejemplo que muestra cómo ordenar una matriz aplanada utilizando varios algoritmos de clasificación:

arr = [0,1,5,3,9,6,7,4,2,8]
Quick_sort = np.Argsort (arr, axis = none, kind = 'Quicksort')
Merge_sort = np.Argsort (arr, axis = none, kind = 'mergesort')
Heap_sort = NP.Argsort (arr, axis = none, kind = 'HeApsort')
establo = np.Argsort (arr, axis = none, kind = 'HeApsort')
print (f "Quicksort: Quick_sort \ n Mergesort: Merge_sort \ n HeApsort: Heap_sort \ n Stable: stable")

El código anterior utiliza varios algoritmos de clasificación y devuelve los índices de matriz resultantes.

El siguiente es un ejemplo de salida:

Quicksort: [0 1 8 3 7 2 5 6 9 4]
Mergeort: [0 1 8 3 7 2 5 6 9 4]
Heapsort: [0 1 8 3 7 2 5 6 9 4]
Estable: [0 1 8 3 7 2 5 6 9 4]

Ejemplo 3 - Ordene la matriz 2D a lo largo de varios eje

Veamos un ejemplo al clasificar una matriz 2D a lo largo del eje de varios eje.

imprimir (f "eje 0: np.argsort (arr, axis = 0) ")

La matriz de retorno es la siguiente:

Eje 0: [[1 1 1]
[0 0 0]]

Para ordenar a lo largo del eje 1, aplique el siguiente código:

imprimir (f "eje 1: np.Argsort (arr, axis = 1) ")

Esto debería volver a:

Eje 1: [[2 1 0]
[2 1 0]]

Conclusión

Este artículo sirve como una guía sobre cómo usar la función ArgSort () en Numpy para ordenar una matriz a lo largo de un eje específico utilizando varios algoritmos. Hay más tutoriales disponibles en Linux Sugerencia.