多个pandas.dataframe到一个csv文件

rkj*_*983 2 python csv pandas

我有多个pandas数据帧,并希望将它们写为一个CSV文件.什么是最直接的方式?

例如,从以下四个数据帧中,

在此输入图像描述

如何在CSV下创建?

在此输入图像描述

注意数据框都具有相同的尺寸.

Nic*_*cea 12

对于需要将多个数据帧垂直附加到同一个 csv 的任何人,您可以使用以下命令:

with open('all_dfs.csv','a') as f:
    for df in list_of_dfs:
        df.to_csv(f)
        f.write("\n")
Run Code Online (Sandbox Code Playgroud)


Ami*_*ory 7

一种非常直接的方法是concat水平配对,垂直连接结果,并使用to_csv以下方法将其全部写出来:

 import pandas as pd

 pd.concat([
    pd.concat([df1, df2], axis=1),
    pd.concat([df3, df4], axis=1)]).to_csv('foo.csv')
Run Code Online (Sandbox Code Playgroud)

一种可能更节省内存的方式就是逐个编写它:

with open('foo.csv', 'w') as f:
     pd.concat([df1, df2], axis=1).to_csv(f)
with open('foo.csv', 'a') as f:
     pd.concat([df3, df4], axis=1).to_csv(f, header=False)
Run Code Online (Sandbox Code Playgroud)

省略headers=False会重复标题.