我想迭代地添加一些從一組csv文件中讀取的熊貓數據框,並且在第16個文件後出現內存錯誤。新文件是大約30萬行的熊貓。以高效的內存方式迭代地添加熊貓數據框
有沒有辦法在硬盤驅動器(例如使用hdf5)或以更高效的內存方式執行此操作?
查看下面的代碼。請注意,sum_of_all_files從一個空的數據框開始。
sum_of_all_files = pd.DataFrame()
for file_name in list_of_files:
file_df=pd.read_csv(file_name,index_col=0,header=None).dropna()
sum_of_all_files=sum_of_all_files.add(file_df,fill_value=0, axis='index')
謝謝!
編輯:我想通過索引添加,即如果兩行有相同的索引,添加它們。我通過在最後一行添加「axis ='index'」來修正上面的代碼。
您的目標是將所有內容加載到一個DF中,或者將其一次性處理並寫回磁盤? – MaxU
@MaxU目標是創建一個表格,其中包含按鍵添加的所有csv文件的內容。它可以在磁盤或內存中... – Escachator
有多少列有csvs? – jezrael