Comment changer l'ordre des colonnes de Pandas DataFrame

  1. Lister les colonnes dans le nouvel ordre souhaité dans les Pandas
  2. Insérer une nouvelle colonne avec l’emplacement spécifique dans Pandas
  3. colonne reindex pour un ordre donné dans Pandas
Comment changer l'ordre des colonnes de Pandas DataFrame

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 
Vous aimez nos tutoriels ? Abonnez-vous à DelftStack sur YouTube pour nous aider à créer davantage de tutoriels vidéo de haute qualité. Abonnez-vous

Article connexe - Pandas DataFrame

Article connexe - Pandas DataFrame Column