Podemos obtener los índices de los elementos ordenados de una array determinada con la ayuda del método argsort() . Este
numpy.argsort(arr, axis=-1, kind=’quicksort’, order=None)
Ejemplo 1:
Python3
import numpy as np # Original array array = np.array([10, 52, 62, 16, 16, 54, 453]) print(array) # Indices of the sorted elements of a # given array indices = np.argsort(array) print(indices)
Producción:
[ 10 52 62 16 16 54 453] [0 3 4 1 5 2 6]
Ejemplo 2:
Python3
import numpy as np # Original array array = np.array([1, 2, 3, 4, 5]) print(array) # Indices of the sorted elements of # a given array indices = np.argsort(array) print(indices)
Producción:
[1 2 3 4 5] [0 1 2 3 4]
Ejemplo 3:
Python3
import numpy as np # input 2d array in_arr = np.array([[ 2, 0, 1], [ 5, 4, 3]]) print ("Input array :\n", in_arr) # output sorted array indices out_arr1 = np.argsort(in_arr, kind ='mergesort', axis = 0) print ("\nOutput sorteded array indices along axis 0:\n", out_arr1) out_arr2 = np.argsort(in_arr, kind ='heapsort', axis = 1) print ("\nOutput sorteded array indices along axis 1:\n", out_arr2)
Producción:
Input array : [[2 0 1] [5 4 3]] Output sorteded array indices along axis 0: [[0 0 0] [1 1 1]] Output sorteded array indices along axis 1: [[1 2 0] [2 1 0]]
Publicación traducida automáticamente
Artículo escrito por jyotikayadav2017 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA