简体   繁体   中英

How to save a list of dataframes to csv

I have a list of data frames which I reshuffle and then I want to save the output as a csv. To do this I'm trying to append this list to an empty data frame:

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)

This result in an empty data frames with a bunch of Nans. I don't necessarily need to append my reshuffled list to a dataframe, I just need to save it as a csv, and this is the only way I find yet.

我认为你需要concatto_csv如果l1listDataFrames

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

An alternative to the chosen answer is to open the CSV and append one dataframe at a time inside a loop. This can be order of magnitude faster depending on the size of data.

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

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM