2016-10-21 11 views
2

2つのデータフレームをまとめて結合し、最初のものを削除してRAMにスペースを作成したい。1にマージした後に前のパンダテーブルを削除する

df1 = pd.read_csv(filepath, index_col='False') 
df2 = pd.read_csv(filepath, index_col='False') 
df3 = pd.read_csv(filepath, index_col='False') 
df4 = pd.read_csv(filepath, index_col='False') 


result = df1.merge(df2, on='column1', how='left', left_index='True', copy='False') 

result2 = result.merge(df3, on='column1', how='left', left_index='True', copy='False') 

は、理想的には私はこの後にやりたいことはDF1、DF2、DF3のすべてを削除し、result2データフレームの左を持っています。

答えて

2

それは不要なのDFを発生させない方が良いでしょう:

file_list = glob.glob('/path/to/file_mask*.csv') 

df = pd.read_csv(file_list[0], index_col='False') 

for f in file_list[1:]: 
    df = df.merge(pd.read_csv(f, index_col='False'), on='column1', how='left') 

はPSがIMOあなたは(少なくともべきではありません)onleft_indexパラメータを混在させることはできません。たぶん、あなたはright_onleft_indexを意味 - それはOKだろう

+0

あなたのソリューションは、上記の賢いですが、私は再び、複数のデータフレームの時間と時間をマージする必要があります。 –

+0

@AranFreel、私は私の答えを更新しました - – MaxU

+0

をチェックしてくださいこれは十分ではありません。なぜなら、マージする列が違うからです。 –

1

ちょうどを使用デル

del df1, df2, df3, df4 
関連する問題