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
Susan Sarandonoriginal
2024-12-13 17:08:13153parcourir

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

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

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

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

ou

df1.sort(['a', 'b'], ascending=[True, False], inplace=True)

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