2013-11-04 6 views
5

いくつかの関数を適用し、Pandasデータフレームの既存の列に新しい列値を生成します。ただし、df['col1'] = new_listは新しいリストを列に割り当てることができません。それは間違った方法であり、そのような操作を適用する正確な方法は何ですか?パンダのデータフレームの既存の列にリストを割り当てる方法は?

+1

'df'は辞書ですか?あなたは何かエラーを受け取っていますか?詳細を投稿してください。 – moenad

+2

質問のタイトルとテキストが示唆するように、 'df'はパンダの' DataFrame'だと思います。 – piokuc

+2

"うまくいきません"と言うと、正確に何が動作していないかを明確にすることができますか?例と完全なスタックトレースです。それはうまくいくように見えます。 –

答えて

7

リストの長さはあなたのリストには、データフレームよりも短いか長い場合、その後、あなたがエラーLength of values does not match length of indexを受け取りますDATAFRAME

>>> df = pd.DataFrame({'A':[1,2,3], 'B':[4,5,6]}) 
>>> df['C'] = [10,20,30] 
>>> df 
    A B C 
0 1 4 10 
1 2 5 20 
2 3 6 30 

の行数に等しい場合には動作するはずです。

+1

例で列を再割り当てしていないので、新しい列を追加するだけです。 – Astrid

+1

真でありながら、最初の行に 'C'が(異なる値で)定義されている場合にも機能します。 – gseattle

関連する問題