Comment insérer une colonne dans un DataFrame Pandas
Souvent, vous souhaiterez peut-être insérer une nouvelle colonne dans un DataFrame pandas. Heureusement, cela est facile à faire en utilisant la fonction pandas insert() , qui utilise la syntaxe suivante :
insert(loc, colonne, valeur,allow_duplicates=False)
où:
- loc : index dans lequel insérer la colonne. La première colonne est 0.
- column : Nom à donner à la nouvelle colonne.
- value : Tableau de valeurs pour la nouvelle colonne.
- allow_duplicates : s’il faut ou non autoriser le nouveau nom de colonne à correspondre au nom de colonne existant. La valeur par défaut est Faux.
Ce tutoriel montre plusieurs exemples d’utilisation pratique de cette fonction.
Exemple 1 : insérer une nouvelle colonne comme première colonne
Le code suivant montre comment insérer une nouvelle colonne comme première colonne d’un DataFrame existant :
import pandas as pd #create DataFrame df = pd.DataFrame({'points': [25, 12, 15, 14, 19], 'assists': [5, 7, 7, 9, 12], 'rebounds': [11, 8, 10, 6, 6]}) #view DataFrame df points assists rebounds 0 25 5 11 1 12 7 8 2 15 7 10 3 14 9 6 4 19 12 6 #insert new column 'player' as first column player_vals = ['A', 'B', 'C', 'D', 'E'] df.insert(loc=0, column='player', value=player_vals) df player points assists rebounds 0 A 25 5 11 1 B 12 7 8 2 C 15 7 10 3 D 14 9 6 4 E 19 12 6
Exemple 2 : insérer une nouvelle colonne en tant que colonne du milieu
Le code suivant montre comment insérer une nouvelle colonne comme troisième colonne d’un DataFrame existant :
import pandas as pd #create DataFrame df = pd.DataFrame({'points': [25, 12, 15, 14, 19], 'assists': [5, 7, 7, 9, 12], 'rebounds': [11, 8, 10, 6, 6]}) #insert new column 'player' as third column player_vals = ['A', 'B', 'C', 'D', 'E'] df.insert(loc=2, column='player', value=player_vals) df points assists player rebounds 0 25 5 A 11 1 12 7 B 8 2 15 7 C 10 3 14 9 D 6 4 19 12 E 6
Exemple 3 : Insérer une nouvelle colonne comme dernière colonne
Le code suivant montre comment insérer une nouvelle colonne comme dernière colonne d’un DataFrame existant :
import pandas as pd #create DataFrame df = pd.DataFrame({'points': [25, 12, 15, 14, 19], 'assists': [5, 7, 7, 9, 12], 'rebounds': [11, 8, 10, 6, 6]}) #insert new column 'player' as last column player_vals = ['A', 'B', 'C', 'D', 'E'] df.insert(loc=len(df.columns), column='player', value=player_vals) df points assists player rebounds 0 25 5 A 11 1 12 7 B 8 2 15 7 C 10 3 14 9 D 6 4 19 12 E 6
Notez que l’utilisation de len(df.columns) vous permet d’insérer une nouvelle colonne comme dernière colonne de n’importe quel dataFrame, quel que soit le nombre de colonnes qu’il peut contenir.
Vous pouvez trouver la documentation complète de la fonction insert() ici .