ホームページ  >  記事  >  バックエンド開発  >  Pandas DataFrame に複数の列を同時に追加するにはどうすればよいですか?

Pandas DataFrame に複数の列を同時に追加するにはどうすればよいですか?

Susan Sarandon
Susan Sarandonオリジナル
2024-10-25 08:29:02691ブラウズ

How to Add Multiple Columns to a Pandas DataFrame Simultaneously?

Pandas データフレームに複数の列を同時に追加する: ステップバイステップ ガイド

データ分析の取り組みでは、多くの場合、既存の Pandas データフレームを追加の列で拡張します。このプロセスを簡素化するために、一度に複数の列を追加する合理的なアプローチを模索します。

最初の誤解: 複数の列への値の代入

直感的には、次のようなことが予想されるかもしれません。タスクを実行するための構文:

<code class="python">df[['column_new_1', 'column_new_2', 'column_new_3']] = [np.nan, 'dogs', 3]</code>

ただし、このアプローチでは、Pandas の列リスト割り当ての右側の要件 (df[[new1, new2]] = ..) によるハードルが発生します。 .) DataFrame になります。

実用的な解決策: 複数の列の割り当て

めげずに、目標を達成するためにさまざまな手法をナビゲートします:

1.同時代入のための反復子のアンパック

<code class="python">df['column_new_1'], df['column_new_2'], df['column_new_3'] = np.nan, 'dogs', 3</code>

2. 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 を使用して単一行を展開します。一時データフレームとの連結

<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.一時データフレームとの結合

<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.辞書ベースの一時データフレーム

<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() (Python 3.6 )

<code class="python">df = df.assign(column_new_1=np.nan, column_new_2='dogs', column_new_3=3)</code>

7.列を作成し、値を個別に割り当てる

<code class="python">df['column_new_1'] = np.nan
df['column_new_2'] = 'dogs'
df['column_new_3'] = 3</code>

8.個別の割り当て

他のソリューションの優雅さには欠けますが、このアプローチは依然として単純です:

<code class="python">df['column_new_1'] = np.nan
df['column_new_2'] = 'dogs'
df['column_new_3'] = 3</code>

以上がPandas DataFrame に複数の列を同時に追加するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。