Maison >développement back-end >Tutoriel Python >Comment ajouter efficacement une nouvelle colonne à un DataFrame Pandas ?
Étant donné un DataFrame avec des lignes indexées, vous souhaitez incorporer une colonne supplémentaire sans modifier les données existantes. Par exemple, étant donné le DataFrame :
</p> <pre class="brush:php;toolbar:false"> a b c d
2 0,671399 0,101208 -0,181532 0,241273
3 0,446172 -0,243316 0,051767 1.577318
5 0.614758 0.075793 -0.451460 -0.012493
Ajoutez une colonne nommée 'e' avec les valeurs suivantes :
<br> 0 -0.335485<br>1 -1.166658<br>2 -0.385571<br>dtype: float64<br>
Modifier 2017
La méthode la plus efficace, comme suggérée par @Alexander et indiquée dans les commentaires, est d'utiliser la méthode assign :
df1 = df1.assign(e=pd.Series(np.random.randn(sLength)).values)
Edit 2015
Certains utilisateurs ont signalé avoir rencontré le SettingWithCopyWarning avec le code d'origine. Cependant, le code reste fonctionnel dans la version actuelle de pandas, 0.16.1.
sLength = len(df1['a']) df1['e'] = pd.Series(np.random.randn(sLength), index=df1.index)
Réponse originale
Créez une série en utilisant les index d'origine de df1 et attribuez dans la nouvelle colonne :
df1['e'] = pd.Series(np.random.randn(sLength), index=df1.index)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!