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

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *