Python NumPy numpy.sort() Función

Minahil Noor 30 enero 2023
  1. La sintaxis de numpy.sort()
  2. Códigos de ejemplo: numpy.sort()
  3. Códigos de ejemplo: numpy.sort() para ordenar un array multidimensional
  4. Códigos de ejemplo: numpy.sort() para ordenar un array multidimensional a lo largo de un eje especificado
  5. Códigos de ejemplo: numpy.sort() para ordenar diferentes tipos de matrices
Python NumPy numpy.sort() Función

La función Python NumPy numpy.sort() ordena un array N-dimensional de cualquier tipo de datos. La función ordena el array en orden ascendente por defecto.

La sintaxis de numpy.sort()

numpy.sort(a, axis=-1, kind=None, order=None)

Parámetros

a Es una estructura similar a un array. Es el array de entrada que hay que clasificar.
axis Es un número entero. Representa el eje a lo largo del cual la función ordenará el conjunto. Su valor por defecto es -1, lo que significa que la función ordenará el conjunto a lo largo del último eje, es decir, en orden ascendente. Si es None, la función convertirá el array multidimensional en unidimensional antes de ordenarlo. Si es 0, la función ordenará el conjunto a lo largo del primer eje, es decir, en orden descendente.
kind Es una cuerda. Representa el nombre del algoritmo de clasificación. Los nombres de los algoritmos de clasificación aceptados por esta función son quicksort, mergesort, heapsort y stable. Para leer más sobre las complejidades temporales de estos algoritmos de clasificación, haga clic aquí.
order Es una cadena o una lista de cadenas. Cuando se definen los campos de un array, este parámetro se utiliza para especificar el campo que se va a comparar primero.

Volver

Devuelve un array ordenada del mismo tipo y forma que el array de entrada.

Códigos de ejemplo: numpy.sort()

El parámetro a es obligatorio. Si ejecutamos esta función en un array unidimensional, genera la siguiente salida.

import numpy as np

a = np.array(
    [89, 34, 56, 87, 90, 23, 45, 12, 65, 78, 9, 34, 12, 11, 2, 65, 78, 82, 28, 78]
)

sorted_array = np.sort(a)
print("The sorted array is:")
print(sorted_array)

Producción:

The sorted array is:
[2 9 11 12 12 23 28 34 34 45 56 65 65 78 78 78 82 87 89 90]

Ha devuelto un array ordenado en orden ascendente.

Códigos de ejemplo: numpy.sort() para ordenar un array multidimensional

Ahora pasaremos por un array multidimensional.

import numpy as np

a = np.array([[11, 12, 5], [15, 6, 10], [10, 8, 12], [12, 15, 8], [34, 78, 90]])

sorted_array = np.sort(a)
print("The sorted array is:")
print(sorted_array)

Producción:

The sorted array is:
[[ 5 11 12]
 [ 6 10 15]
 [ 8 10 12]
 [ 8 12 15]
 [34 78 90]]

La función ha ordenado el array en orden ascendente, es decir, a lo largo del último eje como valor por defecto para el axis = -1.

Códigos de ejemplo: numpy.sort() para ordenar un array multidimensional a lo largo de un eje especificado

Fijaremos el valor del parámetro axis en None.

import numpy as np

a = np.array([[11, 12, 5], [15, 6, 10], [10, 8, 12], [12, 15, 8], [34, 78, 90]])

sorted_array = np.sort(a, axis=None)
print("The sorted array is:")
print(sorted_array)

Producción:

The sorted array is:
[5 6 8 8 10 10 11 12 12 12 15 15 34 78 90]

Note que la función ha convertido el array en un array unidimensional primero y luego lo ha ordenado.

Ahora, ordenaremos nuestro array a lo largo del primer eje.

import numpy as np

a = np.array([[11, 12, 5], [15, 6, 10], [10, 8, 12], [12, 15, 8]])

sorted_array = np.sort(a, axis=0)
print("The sorted array is:")
print(sorted_array)

Producción:

The sorted array is:
[[10  6  5]
 [11  8  8]
 [12 12 10]
 [15 15 12]]

La función ha ordenado el array a lo largo del primer eje, es decir, en orden descendente.

Códigos de ejemplo: numpy.sort() para ordenar diferentes tipos de matrices

Podemos usar esta función para clasificar matrices de diferentes tipos de datos como un array de cadenas, un array booleana, etc.

import numpy as np

a = np.array([["z", "x"], ["b", "a"], ["g", "l"], ["k", "d"]])

sorted_array = np.sort(a)
print("The sorted array is:")
print(sorted_array)

Producción:

The sorted array is:
[['x' 'z']
 ['a' 'b']
 ['g' 'l']
 ['d' 'k']]

Note que ha ordenado el array en orden alfabético creciente. Ahora, pasaremos un array de valores booleanos.

import numpy as np

a = np.array([[True, False, True], [False, False, True], [False, True, True]])

sorted_array = np.sort(a)
print("The sorted array is:")
print(sorted_array)

Producción:

The sorted array is:
[[False  True  True]
 [False False  True]
 [False  True  True]]