Cómo ordenar una array Numpy | Python

En este artículo, aprenderemos cómo ordenar una array Numpy. Hay varias formas en Numpy para ordenar una array, según el requisito. Tratemos de entenderlos con la ayuda de ejemplos.

Ejemplo #1: Simplemente ordene la array dada según el eje usando el método sort().

# 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 : \n", arr1)        
   
   
# sort along the last axis
a = np.array([[10, 15], [12, 1]])
arr2 = np.sort(a, axis = -1)        
print ("\nAlong first axis : \n", arr2)
   
   
a = np.array([[12, 15], [10, 1]])
arr1 = np.sort(a, axis = None)        
print ("\nAlong none axis : \n", arr1)

Producción:

Along first axis : 
 [[10  1]
 [12 15]]

Along first axis : 
 [[10 15]
 [ 1 12]]

Along none axis : 
 [ 1 10 12 15]

Ejemplo #2: Obtenga los índices que pueden devolver una array ordenada usando el método argsort()

# Python code to demonstrate 
# working of  numpy.argsort
import numpy as np
   
# Numpy array created
a = np.array([9, 3, 1, 7, 4, 3, 6])
   
# unsorted array print
print('Original array:\n', 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)

Producción:

Original array:
 [9 3 1 7 4 3 6]
Sorted indices of original array-> [2 1 5 4 6 3 0]
Sorted array-> [1 3 3 4 6 7 9]

Ejemplo n.º 3: obtenga una ordenación estable mediante una secuencia de teclas.

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)

Producción:

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]

Publicación traducida automáticamente

Artículo escrito por Shivam_k y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *