Maison > développement back-end > Tutoriel Python > Comment trier un tableau NumPy par colonne spécifique ?

Comment trier un tableau NumPy par colonne spécifique ?

DDD
Libérer: 2024-11-29 18:49:13
original
865 Les gens l'ont consulté

How Do I Sort a NumPy Array by a Specific Column?

Tri des tableaux NumPy par colonne : un guide complet

Le tri des tableaux dans NumPy en fonction de leurs colonnes spécifiques est un aspect crucial de la manipulation des données. Ce guide fournit une explication complète sur la façon d'effectuer cette opération, en répondant à la question suivante :

Comment trier un tableau NumPy par sa nième colonne ?

Par exemple, étant donné :

a = np.array([[9, 2, 3],
           [4, 5, 6],
           [7, 0, 5]])
Copier après la connexion

Vous souhaitez trier les lignes d'un par la deuxième colonne pour obtenir :

array([[7, 0, 5],
       [9, 2, 3],
       [4, 5, 6]])
Copier après la connexion

Solution :

Pour réaliser le tri souhaité, utilisez le code suivant :

a[a[:, 1].argsort()]
Copier après la connexion

Ce code trie le tableau a par les valeurs de sa deuxième colonne (index de colonne 1). La clé réside dans la fonction .argsort(). Il génère les indices des valeurs triées dans la deuxième colonne, qui sont ensuite utilisés pour réorganiser les lignes du tableau en conséquence.

Le tableau résultant sera trié par la deuxième colonne, les lignes étant classées par ordre croissant. en fonction des valeurs de cette colonne.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal