Maison > développement back-end > Tutoriel Python > Comment éliminer les lignes en double dans un DataFrame, en conservant uniquement les lignes avec les valeurs les plus élevées dans une colonne spécifique ?

Comment éliminer les lignes en double dans un DataFrame, en conservant uniquement les lignes avec les valeurs les plus élevées dans une colonne spécifique ?

Linda Hamilton
Libérer: 2024-11-07 05:34:03
original
563 Les gens l'ont consulté

How to Eliminate Duplicate Rows in a DataFrame, Keeping Only the Rows with the Highest Values in a Specific Column?

Comment éliminer les doublons par colonnes, en conservant les lignes avec les valeurs les plus élevées

Lorsqu'il est confronté à des valeurs en double dans une colonne d'un DataFrame, il devient nécessaire de mettre en œuvre des stratégies pour les éliminer. Une approche consiste à conserver uniquement les lignes avec les valeurs les plus élevées dans une autre colonne.

Considérez cet exemple DataFrame :

A B
1 10
1 20
2 30
2 40
3 10
Copier après la connexion

L'objectif est de transformer ce DataFrame en :

A B
1 20
2 40
3 10
Copier après la connexion

Une méthode consiste à trier le DataFrame avant d'éliminer les doublons :

df.sort_values(by='B', ascending=False).drop_duplicates(subset='A')
Copier après la connexion

Cependant, pour des scénarios plus complexes impliquant plusieurs colonnes et des exigences de tri nuancées, groupby peut être utilisé. Le code ci-dessous illustre cette approche :

df.groupby('A', group_keys=False).apply(lambda x: x.loc[x.B.idxmax()])
Copier après la connexion

Cette solution regroupe les lignes par colonne « A » et donne la ligne avec la valeur maximale dans la colonne « B » pour chaque groupe.

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