ホームページ > バックエンド開発 > Python チュートリアル > 新しい列を Pandas DataFrame に効率的に追加するにはどうすればよいですか?

新しい列を Pandas DataFrame に効率的に追加するにはどうすればよいですか?

Mary-Kate Olsen
リリース: 2024-12-14 03:23:10
オリジナル
535 人が閲覧しました

How to Efficiently Add a New Column to a Pandas DataFrame?

既存の DataFrame に新しい列を追加する方法

問題ステートメント

インデックス付きの行を持つ DataFrame が与えられた場合、追加の列を組み込む必要がある既存のデータを変更することなく。たとえば、DataFrame があるとします:

      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

次の内容で 'e' という名前の列を追加します。値:

<br>0 -0.335485<br>1 -1.166658<br>2 -0.385571<br>dtype: float64<br>

ソリューション

Edit 2017

@Alexander によって提案され、コメントには、assign を使用します。メソッド:

df1 = df1.assign(e=pd.Series(np.random.randn(sLength)).values)
ログイン後にコピー

Edit 2015

一部のユーザーは、元のコードで SettingWithCopyWarning が発生したと報告しました。ただし、コードは現在の pandas バージョン 0.16.1 でも引き続き機能します。

sLength = len(df1['a'])

df1['e'] = pd.Series(np.random.randn(sLength), index=df1.index)
ログイン後にコピー

元の回答

df1 の元のインデックスを使用してシリーズを作成し、割り当てますそれを新しい列に追加します:

df1['e'] = pd.Series(np.random.randn(sLength), index=df1.index)
ログイン後にコピー

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

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート