Maison > développement back-end > Tutoriel Python > Comment supprimer les lignes en double sur plusieurs colonnes dans Pandas ?

Comment supprimer les lignes en double sur plusieurs colonnes dans Pandas ?

DDD
Libérer: 2024-12-19 10:24:15
original
337 Les gens l'ont consulté

How to Remove Duplicate Rows Across Multiple Columns in Pandas?

Suppression des doublons sur plusieurs colonnes dans Python Pandas

La fonction drop_duplicates dans Pandas fournit un moyen pratique de supprimer les lignes en double en fonction des colonnes spécifiées. Cependant, que se passe-t-il si vous souhaitez supprimer les doublons non pas sur une seule colonne mais plutôt sur un sous-ensemble de plusieurs colonnes ?

Pour y parvenir, nous pouvons exploiter la puissance de drop_duplicates avec le paramètre subset. En spécifiant la liste des colonnes dans lesquelles rechercher les doublons, vous pouvez vous assurer que les lignes correspondant à n'importe quelle combinaison de ces colonnes sont éliminées.

Considérez l'exemple suivant :

    A   B   C
0   foo 0   A
1   foo 1   A
2   foo 1   B
3   bar 1   A
Copier après la connexion

Notre objectif est pour supprimer les lignes qui correspondent aux colonnes A et C. Cela supprimerait les lignes 0 et 1, car elles ont les mêmes valeurs dans les deux columns.

En utilisant drop_duplicates, nous pouvons accomplir cela avec le code suivant :

import pandas as pd

df = pd.DataFrame({"A":["foo", "foo", "foo", "bar"], "B":[0,1,1,1], "C":["A","A","B","A"]})
df.drop_duplicates(subset=['A', 'C'], keep=False)
Copier après la connexion

Le paramètre subset spécifie les colonnes à utiliser pour la détection des doublons. Le paramètre keep, défini sur False, garantit que toutes les lignes en double sont supprimées.

Le DataFrame résultant sera le suivant :

    A   B   C
0   foo 0   A
2   foo 1   B
3   bar 1   A
Copier après la connexion

Les lignes 0 et 1 ont été supprimées car elles correspondaient sur A et C, unifiant efficacement le DataFrame en fonction de ces colonnes.

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