我有10个csv文件,每个文件的行数接近100万。我有一个for循环,它迭代文件名并创建一个数据帧并汇总结果。
for file in filenames:
df = pd.read_csv('file',sep=',', encoding='utf-8', dtype='object')
print (df)
concatenated_df = pd.concat(df, ignore_index=True)
我是gettomg Memory Error和concat语句间歇性失败。 打印df工作正常。我的桌面上有32 GB RAM。有没有更好的方法来解决这个问题?
答案 0 :(得分:0)
我认为32GB足以处理你拥有的数据。假设所有文件都有相同数量的列,请尝试使用以下列表:
concatenated_df = pd.concat([pd.read_csv(df, sep=',', encoding='utf-8', dtype='object') for df in filenames])