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