我们越来越多的使用pandas进行数据处理,有时需要向一个已经存在的csv文件写入数据,传统的方法之前我也有些过,向txt,excel文件写入数据,传送门:Python将二维列表(list)的数据输出(TXT,Excel)
pandas to_csv()
只能在新文件写数据?当然不是!
pandas to_csv() 是可以向已经存在的具有相同结构的csv文件增加dataframe数据。
df.to_csv('my_csv.csv', mode='a', header=False)
to_csv()方法mode默认为w,我们加上mode='a',便可以追加写入数据。
pandas读写文件,处理数据的效率太高了,所以我们尽量使用pandas的进行输出。
下面让我们来看一下示例
# -*- coding:utf-8 -*- import os import time import pandas as pd from multiprocessing import Pool def merge(filename): return pd.read_csv('./fun_data/'+filename) if __name__ == "__main__": file_list = os.listdir('./fun_data') e1 = time.time() pool = Pool(20) result = pool.map(merge,file_list) pool.close() pool.join() e2 = time.time() print(e2 - e1) for i in result: i.to_csv('./static.csv',mode='a',encoding='utf-8',header=False,index=False) e3 = time.time() print(e3-e2)