Comment changer l'ordre des colonnes de Pandas DataFrame
Asad Riaz
30 janvier 2023
24 avril 2020
- Lister les colonnes dans le nouvel ordre souhaité dans les Pandas
- Insérer une nouvelle colonne avec l’emplacement spécifique dans Pandas
-
colonne
reindex
pour un ordre donné dans Pandas

Nous allons introduire comment changer l’ordre des colonnes de la DataFrame
, avec différentes méthodes comme l’attribution des noms de colonnes dans l’ordre que nous voulons, en utilisant insert
et reindex
.
Lister les colonnes dans le nouvel ordre souhaité dans les Pandas
La façon la plus simple est de réassigner la DataFrame
avec une liste des colonnes
, ou simplement d’assigner les noms de colonnes dans l’ordre que nous voulons:
# python 3.x
import pandas as pd
df = pd.DataFrame({'a':['1','2','3','4'],
'b': [16,7,6,16],
'c':[61,57,16,36],
'd':['12','22','13','44'],
'e':['Green','Red','Blue','Yellow'],
'f':[1,11,23,66]})
print(df)
df = df[['e','c','b','f','d','a']]
print('Rearranging ..................')
print('..............................')
print(df)
Production:
a b c d e f
0 1 16 61 12 Green 1
1 2 7 57 22 Red 11
2 3 6 16 13 Blue 23
3 4 16 36 44 Yellow 66
Rearranging ..................
..............................
e c b f d a
0 Green 61 16 1 12 1
1 Red 57 7 11 22 2
2 Blue 16 6 23 13 3
3 Yellow 36 16 66 44 4
Insérer une nouvelle colonne avec l’emplacement spécifique dans Pandas
Si nous créons une nouvelle colonne, nous pouvons l’insérer à l’endroit que nous voulons:
# python 3.x
import pandas as pd
df = pd.DataFrame({'a':['1','2','3','4'],
'b': [16,7,6,16],
'c':[61,57,16,36],
'd':['12','22','13','44'],
'e':['Green','Red','Blue','Yellow'],
'f':[1,11,23,66]})
print(df)
print('Inserting ..................')
print('..............................')
df.insert(0, 'newColMean', df.mean(1))
print(df)
Production:
newColMean a b c d e f
0 26.000000 1 16 61 12 Green 1
1 25.000000 2 7 57 22 Red 11
2 15.000000 3 6 16 13 Blue 23
3 39.333333 4 16 36 44 Yellow 66
colonne reindex
pour un ordre donné dans Pandas
reindex
est sans doute le moyen le plus efficace de réorganiser la colonne:
# python 3.x
import pandas as pd
df = pd.DataFrame({'a':['1','2','3','4'],
'b': [16,7,6,16],
'c':[61,57,16,36],
'd':['12','22','13','44'],
'e':['Green','Red','Blue','Yellow'],
'f':[1,11,23,66]})
print(df)
print('Rearranging ..................')
print('..............................')
df = df.reindex(columns=['a','f','d','b','c','e'])
print(df)
Production:
a b c d e f
0 1 16 61 12 Green 1
1 2 7 57 22 Red 11
2 3 6 16 13 Blue 23
3 4 16 36 44 Yellow 66
Rearranging ..................
..............................
a f d b c e
0 1 1 12 16 61 Green
1 2 11 22 7 57 Red
2 3 23 13 6 16 Blue
3 4 66 44 16 36 Yellow
Article connexe - Pandas DataFrame
- Comment obtenir les en-têtes de colonne de Pandas DataFrame sous forme de liste
- Comment supprimer une colonne de Pandas DataFrame
- Comment convertir la colonne DataFrame en date-heure dans Pandas
- Comment convertir un float en un entier dans Pandas DataFrame
- Comment trier le DataFrame de Pandas par les valeurs d'une colonne
- Comment obtenir l'agrégat des Pandas par groupe et par somme
Article connexe - Pandas DataFrame Column
- Comment obtenir les en-têtes de colonne de Pandas DataFrame sous forme de liste
- Comment supprimer une colonne de Pandas DataFrame
- Comment convertir la colonne DataFrame en date-heure dans Pandas
- Comment obtenir la somme de la colonne Pandas
- Comment convertir une colonne de DataFrame en chaîne de caractères dans Pandas