pandas追加写入excel

方法一

行追加写入同一个excel下的同一个sheet

主要参数:startrow

writer = pd.ExcelWriter(filepath) 
data = pd.read_excel(writer, index_col=None, header=None)
data.to_excel(writer, startrow=0, index=None, header=None, sheet_name='Sheet1')
# df为想要写入的数据
df.to_excel(writer, startrow=data.shape[0], index=None, header=None, sheet_name='Sheet1', encoding='utf-8')
writer.save()

扩展

1. 列追加,startcol=data.shape[1]
2. 追加写入csv文件

df.to_csv(filepath, mode='a', index=False, header=0)

方法二(现在常用的方法,比方法一快很多)

先创建一个空dataframe,新的数据再通过pd.concat拼接

    df_all = pd.DataFrame(data=None)  # 创建空的 dataframe
    # 多数据做循环处理即可
    df = pd.read_excel(file_path, header=0, sheet_name='Sheet1')  # 读入数据
    df_all = pd.concat([df_all, df], ignore_index=True)   # concat 合并有相同字段名的dataframe 
     
    data_list = df_all.drop_duplicates(keep='first')    # 避免字段名重复写入,一般会做去重处理
    df_all.to_excel(out_path, index=False, encoding='utf-8')   # 写出数据
Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐