Pandas : Comment déplacer une colonne devant le DataFrame



Vous pouvez utiliser les méthodes suivantes pour déplacer les colonnes vers l’avant d’un DataFrame pandas :

Méthode 1 : déplacer une colonne vers l’avant

df = df[['my_col'] + [x for x in df.columns if x != 'my_col']]

Méthode 2 : déplacer plusieurs colonnes vers l’avant

cols_to_move = ['my_col1', 'my_col2']

df = df[cols_to_move + [x for x in df.columns if x not in cols_to_move]]

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

import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'],
                   'points': [18, 22, 19, 14, 14, 11, 20, 28],
                   'assists': [5, 7, 7, 9, 12, 9, 9, 4],
                   'rebounds': [11, 8, 10, 6, 6, 5, 9, 12]})

#view DataFrame
print(df)

  team  points  assists  rebounds
0    A      18        5        11
1    B      22        7         8
2    C      19        7        10
3    D      14        9         6
4    E      14       12         6
5    F      11        9         5
6    G      20        9         9
7    H      28        4        12

Exemple 1 : déplacer une colonne vers l’avant

Le code suivant montre comment déplacer la colonne « assistes » vers l’avant du DataFrame :

#move 'assists' column to front
df = df[['assists'] + [x for x in df.columns if x != 'assists']]

#view updated DataFrame
print(df)
   assists team  points  rebounds
0        5    A      18        11
1        7    B      22         8
2        7    C      19        10
3        9    D      14         6
4       12    E      14         6
5        9    F      11         5
6        9    G      20         9
7        4    H      28        12

La colonne « assistance » a été déplacée vers l’avant du DataFrame et toutes les autres colonnes sont restées dans le même ordre.

Exemple 2 : déplacer plusieurs colonnes vers l’avant

Le code suivant montre comment déplacer les colonnes « points » et « rebonds » vers l’avant du DataFrame :

#define columns to move to front
cols_to_move = ['points', 'rebounds']

#move columns to front
df = df[cols_to_move + [x for x in df.columns if x not in cols_to_move]]

#view updated DataFrame
print(df)

   points  rebounds team  assists
0      18        11    A        5
1      22         8    B        7
2      19        10    C        7
3      14         6    D        9
4      14         6    E       12
5      11         5    F        9
6      20         9    G        9
7      28        12    H        4

Les colonnes « points » et « rebonds » ont toutes deux été déplacées vers l’avant du DataFrame.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans les pandas :

Comment insérer une colonne dans un DataFrame Pandas
Comment supprimer la colonne d’index dans Pandas
Comment combiner deux colonnes dans Pandas

Ajouter un commentaire

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