如何将数据帧列表保存到 csv

How to save a list of dataframes to csv

我有一个数据帧列表,我对其进行了重新排列,然后我想将输出保存为 csv。为此,我尝试将此列表附加到空数据框:

l1=[year1, year2,..., year30]
shuffle (l1)
columns=['year', 'day', 'tmin', 'tmax', 'pcp']
index=np.arange(10957)
df2=pd.DataFrame(columns=columns, index=index)
l1.append(df2)

这会导致带有一堆 Nans 的空数据框。我不一定需要将重新排列的列表附加到数据框,我只需要将其保存为 csv,这是我找到的唯一方法。

如果 l1DataFrameslist,我想你需要 concat with to_csv:

print pd.concat(l1).to_csv('filename')

所选答案的另一种选择是打开 CSV 并在循环内一次附加一个数据帧。根据数据的大小,这可以快一个数量级。

f = open(filename, 'a')
for df in l1:
    df.to_csv(f)
f.close()