Como classificar um array numpy por coluna (com exemplos)


Você pode usar os seguintes métodos para classificar as linhas de uma matriz NumPy por valores de coluna:

Método 1: classificar por valores de coluna em ordem crescente

 x_sorted_asc = x[x[:, 1]. argsort ()]

Método 2: classificar por valores de coluna decrescentes

 x_sorted_desc = x[x[:, 1]. argsort ()[::-1]]

Os exemplos a seguir mostram como usar cada método na prática.

Exemplo 1: Classificar array Numpy por valores de coluna em ordem crescente

Suponha que temos o seguinte array NumPy:

 import numpy as np

#create array
x = np. array ([14, 12, 8, 10, 5, 7, 11, 9, 2]). reshape (3,3)

#view array
print (x)

[[14 12 8]
 [10 5 7]
 [11 9 2]]

Podemos usar o código a seguir para classificar as linhas da tabela NumPy em ordem crescente com base nos valores da segunda coluna:

 #define new matrix with rows sorted in ascending order by values in second column
x_sorted_asc = x[x[:, 1]. argsort ()]

#view sorted matrix
print (x_sorted_asc)

[[10 5 7]
 [11 9 2]
 [14 12 8]]

Observe que as linhas agora são classificadas em ordem crescente (da menor para a maior) com base nos valores da segunda coluna.

Exemplo 2: Classifique a matriz Numpy por valores de coluna decrescentes

Suponha que temos o seguinte array NumPy:

 import numpy as np

#create array
x = np. array ([14, 12, 8, 10, 5, 7, 11, 9, 2]). reshape (3,3)

#view array
print (x)

[[14 12 8]
 [10 5 7]
 [11 9 2]]

Podemos usar o código a seguir para classificar as linhas da tabela NumPy em ordem decrescente com base nos valores da segunda coluna:

 #define new matrix with rows sorted in descending order by values in second column
x_sorted_desc = x[x[:, 1]. argsort ()[::-1]]

#view sorted matrix
print (x_sorted_desc)

[[14 12 8]
 [11 9 2]
 [10 5 7]]

Observe que as linhas agora são classificadas em ordem decrescente (da maior para a menor) com base nos valores da segunda coluna.

Recursos adicionais

Os tutoriais a seguir explicam como realizar outras operações comuns em Python:

Como encontrar o índice de valor na matriz NumPy
Como obter uma coluna específica de um array NumPy
Como adicionar uma coluna a um array NumPy

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *