Exemples de comment ajouter plusieurs colonnes en même temps dans une dataframe avec pandas
Créez un dataframe avec pandas
Créons une dataframe avec pandas:
import pandas as pdimport numpy as npdata = np.random.randint(10, size=(5,3))columns = ['Score A','Score B','Score C']df = pd.DataFrame(data=data,columns=columns)print(df)
donne par exemple
Score A Score B Score C0 1 5 51 3 9 22 5 9 33 8 6 24 4 7 6
Ajouter une nouvelle colonne
Rappel: pour ajouter une seule colonne à un dataframe, une solution simple est de faire comme ceci:
data = np.random.randint(10, size=(5,1))df['Score D'] = dataprint(df)
donne
Score A Score B Score C Score D0 1 5 5 11 3 9 2 82 5 9 3 03 8 6 2 44 4 7 6 2
Ajouter plusieurs colonnes
Pour ajouter plusieurs colonnes en même temps, une solution consiste à utiliser pandas.concat:
data = np.random.randint(10, size=(5,2))columns = ['Score E','Score F']df_add = pd.DataFrame(data=data,columns=columns)print(df)df = pd.concat([df,df_add], axis=1)print(df)
donne
Score A Score B Score C Score D Score E Score F0 1 5 5 1 4 31 3 9 2 8 7 32 5 9 3 0 7 03 8 6 2 4 5 74 4 7 6 2 6 4
Supprimer les colonnes en double
Remarque: si vous appliquez à nouveau concat:
df = pd.concat([df,df_add], axis=1)
il ajoutera à nouveau les nouvelles colonnes:
Score A Score B Score C Score D Score E Score F Score E Score F0 1 5 5 1 4 3 4 31 3 9 2 8 7 3 7 32 5 9 3 0 7 0 7 03 8 6 2 4 5 7 5 74 4 7 6 2 6 4 6 4
Pour supprimer la colonne du même nom, faites simplement:
df = df.loc[:,~df.columns.duplicated()]
donne
Score A Score B Score C Score D Score E Score F0 1 5 5 1 4 31 3 9 2 8 7 32 5 9 3 0 7 03 8 6 2 4 5 74 4 7 6 2 6 4
