Maison >développement back-end >Tutoriel Python >Comment ajouter simultanément plusieurs colonnes à un DataFrame Pandas ?
Ajout simultané de plusieurs colonnes aux dataframes Pandas : un guide étape par étape
Dans le cadre de l'analyse des données, il est souvent nécessaire pour augmenter les dataframes Pandas existantes avec des colonnes supplémentaires. Pour simplifier ce processus, nous recherchons une approche rationalisée pour ajouter plusieurs colonnes à la fois.
Idée fausse initiale : attribution de valeurs à plusieurs colonnes
Intuitivement, on pourrait s'attendre à ce qui suit syntaxe pour accomplir la tâche :
<code class="python">df[['column_new_1', 'column_new_2', 'column_new_3']] = [np.nan, 'dogs', 3]</code>
Cependant, cette approche se heurte à un obstacle en raison de l'exigence de Pandas pour le côté droit des affectations de liste de colonnes (df[[new1, new2]] = .. .) pour être un DataFrame.
Solutions de travail : attribution de plusieurs colonnes
Sans nous laisser décourager, nous utilisons diverses techniques pour atteindre notre objectif :
1. Déballage de l'itérateur pour les affectations simultanées
<code class="python">df['column_new_1'], df['column_new_2'], df['column_new_3'] = np.nan, 'dogs', 3</code>
2. Extension d'une seule ligne avec DataFrame()
<code class="python">df[['column_new_1', 'column_new_2', 'column_new_3']] = pd.DataFrame([[np.nan, 'dogs', 3]], index=df.index)</code>
3. Concaténation avec des DataFrames temporaires
<code class="python">df = pd.concat([ df, pd.DataFrame([[np.nan, 'dogs', 3]], index=df.index, columns=['column_new_1', 'column_new_2', 'column_new_3']) ], axis=1)</code>
4. Rejoindre des DataFrames temporaires
<code class="python">df = df.join(pd.DataFrame([[np.nan, 'dogs', 3]], index=df.index, columns=['column_new_1', 'column_new_2', 'column_new_3']))</code>
5. DataFrames temporaires basés sur un dictionnaire
<code class="python">df = df.join(pd.DataFrame({'column_new_1': np.nan, 'column_new_2': 'dogs', 'column_new_3': 3}, index=df.index))</code>
6. .assign() pour les arguments à plusieurs colonnes (Python 3.6)
<code class="python">df = df.assign(column_new_1=np.nan, column_new_2='dogs', column_new_3=3)</code>
7. Créez des colonnes, attribuez des valeurs séparément
<code class="python">df['column_new_1'] = np.nan df['column_new_2'] = 'dogs' df['column_new_3'] = 3</code>
8. Affectations séparées
Bien qu'elle manque de l'élégance des autres solutions, cette approche reste simple :
<code class="python">df['column_new_1'] = np.nan df['column_new_2'] = 'dogs' df['column_new_3'] = 3</code>
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!