Comment supprimer les colonnes en double dans Pandas (avec exemples)
Vous pouvez utiliser la syntaxe de base suivante pour supprimer les colonnes en double dans les pandas :
df.T.drop_duplicates().T
Les exemples suivants montrent comment utiliser cette syntaxe dans la pratique.
Exemple : supprimer les colonnes en double dans Pandas
Supposons que nous ayons le DataFrame pandas suivant :
import pandas as pd #create DataFrame with duplicate columns df = pd.DataFrame({'team': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'], 'points': [25, 12, 15, 14, 19, 23, 25, 29], 'assists': [25, 12, 15, 14, 19, 23, 25, 29], 'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]}) df.columns = ['team', 'points', 'points', 'rebounds'] #view DataFrame df team points points rebounds 0 A 25 25 11 1 A 12 12 8 2 A 15 15 10 3 A 14 14 6 4 B 19 19 6 5 B 23 23 5 6 B 25 25 9 7 B 29 29 12
Nous pouvons utiliser le code suivant pour supprimer la colonne « points » en double :
#remove duplicate columns df.T.drop_duplicates().T team points rebounds 0 A 25 11 1 A 12 8 2 A 15 10 3 A 14 6 4 B 19 6 5 B 23 5 6 B 25 9 7 B 29 12
Notez que la colonne « points » a été supprimée alors que toutes les autres colonnes sont restées dans le DataFrame.
Il convient également de noter que ce code supprimera les colonnes en double même si les colonnes ont des noms différents, mais contiennent des valeurs identiques.
Par exemple, supposons que nous ayons le DataFrame pandas suivant :
import pandas as pd #create DataFrame with duplicate columns df = pd.DataFrame({'team': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'], 'points': [25, 12, 15, 14, 19, 23, 25, 29], 'points2': [25, 12, 15, 14, 19, 23, 25, 29], 'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame df team points points2 rebounds 0 A 25 25 11 1 A 12 12 8 2 A 15 15 10 3 A 14 14 6 4 B 19 19 6 5 B 23 23 5 6 B 25 25 9 7 B 29 29 12
Notez que les colonnes « points » et « points2 » contiennent des valeurs identiques.
Nous pouvons utiliser le code suivant pour supprimer la colonne ‘points2’ en double :
#remove duplicate columns df.T.drop_duplicates().T team points rebounds 0 A 25 11 1 A 12 8 2 A 15 10 3 A 14 6 4 B 19 6 5 B 23 5 6 B 25 9 7 B 29 12
Ressources additionnelles
Les didacticiels suivants expliquent comment exécuter d’autres fonctions courantes dans les pandas :
Comment supprimer les lignes en double dans un DataFrame Pandas
Comment supprimer des colonnes dans Pandas
Comment exclure des colonnes dans Pandas