利用pandas向现有CSV文件追加数据的实现方法
本文介绍如何使用pandas库的to_csv方法向已存在的CSV文件追加数据。通过设置mode='a'参数,可实现无需清空原文件即可追加DataFrame数据,适用于批量处理和多进程合并场景,提升数据处理效率。
pandas追加写入CSV的基本原理
随着数据处理需求的增加,pandas已成为常用的工具。在实际应用中,经常遇到需要向已存在的CSV文件追加数据的情况。此前曾介绍过将二维列表数据输出至TXT或Excel文件的方法,本文将聚焦于CSV文件的追加写入操作。
pandas to_csv()是否只能用于创建新文件?答案是否定的。
pandas的to_csv()函数支持向结构相同的已有CSV文件中追加DataFrame数据。
核心代码示例
df.to_csv('my_csv.csv', mode='a', header=False)
mode参数的关键作用
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)
本文关于利用pandas向CSV文件追加写入数据的示例介绍完毕。如需了解更多相关pandas与CSV追加写入的内容,可搜索本站历史文章或浏览后续相关文章。感谢大家的支持!
免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。









