2017-02-11 3 views
1

私は全面的に探していて、プログラムのこの部分を書き直す方法を理解できないので、「値は、DataFrameからスライスのコピーに設定しようとしています」というメッセージが表示されません。ここパンダ:コピー/ビューを使用しない方法は?

は私のコードがどのように見えるかです:だから私は「column_x」と「NEW_COLUMN」のCUMSUMを取るしたいと思っています

list_of_dataframes=[df1,df2,df3,df4] 

empty_list=[] 

for df in list_of_dataframes: 
    df["new_column"]=df["column_x"].cumsum() 
    empty_list.append(df) 

その値が表示されます。

ありがとうございました。代わりに

+0

は、別のリストを作成する必要はありません。結局、 'list_of_dataframes'と' empty_list'は同じです。 – DyZ

答えて

1

変更:

list_of_dataframes[:] = [df.assign(new=df['column_x'].cumsum()) 
         for df in list_of_dataframes]] 

新しいリストを作成:元データフレームを所定の位置に変更されているので

empty_list = [df.assign(new=df['column_x'].cumsum()) 
       for df in list_of_dataframes]] 
関連する問題