Comment sélectionner plusieurs colonnes dans Pandas (avec exemples)



Il existe trois méthodes de base que vous pouvez utiliser pour sélectionner plusieurs colonnes d’un DataFrame pandas :

Méthode 1 : sélectionner les colonnes par index

df_new = df.iloc[:, [0,1,3]]

Méthode 2 : sélectionner les colonnes dans la plage d’index

df_new = df.iloc[:, 0:3]

Méthode 3 : sélectionner les colonnes par nom

df_new = df[['col1', 'col2']]

Les exemples suivants montrent comment utiliser chaque méthode avec le DataFrame pandas suivant :

import pandas as pd

#create DataFrame
df = pd.DataFrame({'points': [25, 12, 15, 14, 19, 23, 25, 29],
                   'assists': [5, 7, 7, 9, 12, 9, 9, 4],
                   'rebounds': [11, 8, 10, 6, 6, 5, 9, 12],
                   'blocks': [4, 7, 7, 6, 5, 8, 9, 10]})

#view DataFrame
df

	points	assists	rebounds blocks
0	25	5	11	 4
1	12	7	8	 7
2	15	7	10	 7
3	14	9	6	 6
4	19	12	6	 5
5	23	9	5	 8
6	25	9	9	 9
7	29	4	12	 10

Méthode 1 : sélectionner les colonnes par index

Le code suivant montre comment sélectionner les colonnes aux positions d’index 0, 1 et 3 :

#select columns in index positions 0, 1, and 3
df_new = df.iloc[:, [0,1,3]]

#view new DataFrame
df_new

        points	assists	blocks
0	25	5	4
1	12	7	7
2	15	7	7
3	14	9	6
4	19	12	5
5	23	9	8
6	25	9	9
7	29	4	10

Notez que les colonnes aux positions d’index 0, 1 et 3 sont sélectionnées.

Remarque : La première colonne d’un DataFrame pandas est située en position 0.

Méthode 2 : sélectionner les colonnes dans la plage d’index

Le code suivant montre comment sélectionner des colonnes dans la plage d’index 0 à 3 :

#select columns in index range 0 to 3
df_new = df.iloc[:, 0:3]

#view new DataFrame
df_new

        points	assists	rebounds
0	25	5	11
1	12	7	8
2	15	7	10
3	14	9	6
4	19	12	6
5	23	9	5
6	25	9	9
7	29	4	12

Notez que la colonne située dans la dernière valeur de la plage (3) ne sera pas incluse dans la sortie.

Méthode 3 : sélectionner les colonnes par nom

Le code suivant montre comment sélectionner les colonnes par nom :

#select columns called 'points' and 'blocks'
df_new = df[['points', 'blocks']]

#view new DataFrame
df_new

        points	blocks
0	25	4
1	12	7
2	15	7
3	14	6
4	19	5
5	23	8
6	25	9
7	29	10

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes dans les pandas :

Comment répertorier tous les noms de colonnes dans Pandas
Comment supprimer des colonnes dans Pandas
Comment convertir un index en colonne dans Pandas

Ajouter un commentaire

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