Maison > développement back-end > Tutoriel Python > Comment trier un DataFrame Pandas par plusieurs colonnes ?

Comment trier un DataFrame Pandas par plusieurs colonnes ?

Susan Sarandon
Libérer: 2024-12-13 17:08:13
original
153 Les gens l'ont consulté

How Do I Sort a Pandas DataFrame by Multiple Columns?

Tri multi-colonnes dans Pandas

Le tri d'un DataFrame Pandas basé sur plusieurs colonnes est une tâche courante. Cet article explique comment effectuer un tri multi-colonnes à l'aide de la méthode sort(), qui est obsolète au profit de sort_values() dans les versions récentes de Pandas.

Méthode sort_values() :

Depuis Pandas 0.17.0, la méthode sort_values() est recommandée pour le tri multi-colonnes. Sa syntaxe est :

df.sort_values(by=['column_1', 'column_2'], ascending=[True, False])
Copier après la connexion

où :

  • by spécifie les colonnes à trier par
  • croissant précise l'ordre de tri de chaque colonne (True pour ascendant, Faux pour décroissant)

Pour exemple :

Pour trier un DataFrame df par colonne 'b' par ordre croissant et colonne 'c' par ordre décroissant, vous pouvez utiliser :

df = df.sort_values(['b', 'c'], ascending=[True, False])
Copier après la connexion

tri () Méthode (obsolète) :

Pour les versions Pandas antérieures à 0.20.0, vous pouvez toujours utiliser la Méthode sort() avec l'argument ascendant :

df.sort(['a', 'b'], ascending=[True, False])
Copier après la connexion

Cependant, il est important de noter que la méthode sort() n'est pas en place par défaut. Par conséquent, vous devez attribuer le résultat de l'opération de tri à un nouveau DataFrame ou utiliser inplace=True pour remplacer le DataFrame d'origine par la version triée :

df1 = df1.sort(['a', 'b'], ascending=[True, False])
Copier après la connexion

ou

df1.sort(['a', 'b'], ascending=[True, False], inplace=True)
Copier après la connexion

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!

source:php.cn
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal