python to_excel多个结果_Python+pandas分离Excel数据到同一个Excel文件中多个Worksheets

原标题:Python+pandas分离Excel数据到同一个Excel文件中多个Worksheets

封面图片:《Python程序设计(第2版)》,董付国,清华大学出版社

===============

问题描述:

已知文件“超市营业额2.xlsx”中结构与部分数据如图所示:

现在要求把每个员工的交易数据写入文件“各员工数据.xlsx”,每个员工的数据占一个worksheet,结构和“超市营业额2.xlsx”一样,并以员工姓名作为worksheet的标题,预期的结果文件如图所示:

很显然,要解决这个问题需要这样几步:1)读取原始数据文件创建DataFrame,2)分离DataFrame,把不同员工的数据分离开,3)把不同员工的数据写入同一个Excel文件的不同Worksheet。

第1步比较简单,使用pandas的read_excel()函数读取Excel文件即可。

对于第2步,需要首先获取所有员工的唯一姓名,然后使用DataFrame结构的布尔运算也很容易分离。

对于第3步,需要使用DataFrame结构的to_excel()方法来实现,把第2步中分离得到的每位员工的数据写入同一个Excel文件的不同Worksheet中,该方法语法为:

to_excel(excel_writer, sheet_name='Sheet1', na_rep='', float_format=None, columns=None, header=True, index=True, index_label=None, startrow=0, startcol=0, engine=None, merge_cells=True, encoding=None, inf_rep='inf', verbose=True)

该方法第一个参数可以是Excel文件路径或ExcelWriter对象,第二个参数sheet_name用来指定要写入的Worksheet名字。

第3步的要点是,to_excel()方法的第一个参数不能使用Excel文件路径,因为每次写入时会覆盖原来Excel文件中的内容。如果代码写成下面的样子:

代码可以运行,但是结果Excel文件中只有最后一次写入的数据,如图:

对于本文描述的需要,需要为to_excel()方法第一个参数指定为ExcelWriter对象,正确代码如下:

教学大纲

责任编辑:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值