Comment trier un tableau NumPy par colonne (avec exemples)



Vous pouvez utiliser les méthodes suivantes pour trier les lignes d’un tableau NumPy par valeurs de colonne :

Méthode 1 : Trier par valeurs de colonne par ordre croissant

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

Méthode 2 : Trier par valeurs de colonne décroissantes

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

Les exemples suivants montrent comment utiliser chaque méthode dans la pratique.

Exemple 1 : trier le tableau Numpy par valeurs de colonne par ordre croissant

Supposons que nous ayons le tableau NumPy suivant :

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]]

Nous pouvons utiliser le code suivant pour trier les lignes du tableau NumPy par ordre croissant en fonction des valeurs de la deuxième colonne :

#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]]

Notez que les lignes sont désormais triées par ordre croissant (de la plus petite à la plus grande) en fonction des valeurs de la deuxième colonne.

Exemple 2 : Trier le tableau Numpy par valeurs de colonne décroissantes

Supposons que nous ayons le tableau NumPy suivant :

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]]

Nous pouvons utiliser le code suivant pour trier les lignes du tableau NumPy par ordre décroissant en fonction des valeurs de la deuxième colonne :

#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]]

Notez que les lignes sont désormais triées par ordre décroissant (de la plus grande à la plus petite) en fonction des valeurs de la deuxième colonne.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes en Python :

Comment trouver l’indice de valeur dans le tableau NumPy
Comment obtenir une colonne spécifique à partir d’un tableau NumPy
Comment ajouter une colonne à un tableau NumPy

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *