Tri d'une trame de données Pandas par plusieurs colonnes
Tri d'une trame de données Pandas par plusieurs colonnes est une opération courante dans l'analyse des données. Considérons une trame de données avec les colonnes « a », « b » et « c ». Pour trier cette trame de données par colonne « b » par ordre croissant et colonne « c » par ordre décroissant, suivez ces étapes :
À partir de la version 0.17.0 de Pandas, la méthode de tri est obsolète au profit de sort_values. Depuis la version 0.20.0, le tri a été complètement supprimé. Cependant, les arguments et les résultats restent inchangés :
df.sort_values(['a', 'b'], ascending=[True, False])
Une manière équivalente utilisant le tri obsolète la méthode est :
df.sort(['a', 'b'], ascending=[True, False])
Par exemple, considérons une trame de données df1 avec des valeurs entières aléatoires dans les colonnes « a » et « b » :
import pandas as pd import numpy as np df1 = pd.DataFrame(np.random.randint(1, 5, (10, 2)), columns=['a', 'b'])
Tri de cette trame de données par 'a' dans l'ordre croissant ordre et 'b' par ordre décroissant donne :
df1.sort(['a', 'b'], ascending=[True, False])
a b 2 1 4 7 1 3 1 1 2 3 1 2 4 3 2 6 4 4 0 4 3 9 4 3 5 4 1 8 4 1
N'oubliez pas que la méthode de tri n'est pas en place par défaut. Pour mettre à jour df1 avec les valeurs triées, attribuez le résultat de la méthode de tri à df1 ou utilisez inplace=True dans l'appel de méthode :
df1 = df1.sort(['a', 'b'], ascending=[True, False])
ou
df1.sort(['a', 'b'], ascending=[True, False], inplace=True)
Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.
Copyright© 2022 湘ICP备2022001581号-3