pandas之DataFrame实现结果数据生成excle

pd.to_excle

对pandas处理后的数据生成excle 有很直接的办法 to_excle 不必再像xlrd之类的要一行一行的拼接数据,而是直接一份规整的数据转为一份excle

import pandas as pd 

dir_name =/test/                #需存放的路径

#需注意每次生成excle时,对已经存在的同名文件会直接进行覆盖
#我后续的文件是程序中支持下载的,所以需要每次是一份新的
#需要的路径和文件名,未传路径的话会直接存在当前项目目录下
writer = pd.ExcelWriter(dir_name + test.xlsx')    


pd_list = []        #待处理数据
pd_columns = []        #表格标题行
sheet_name = 'test'    
pd_excle = pd.DataFrame(pd_list,colums=pd_columns)   
 
#float_format科学计数法,index默认为Ture会在最左侧生成一列索引列,不需要的话False即可,header默认为0,从excle文件的第几行存入当前数据表,我传的1,因为后续要对表格加标题
pd_excle.to_excle(writer,sheet_name,float_format='%.5f',index=False,header=1)

ws = writer.sheets(sheet_name)
wb = writer.book
format = wb.add_format({'bold':Ture,'align':'center'})    #设置格式
data = '表格标题'
ws.merge_range('A1:H1',data,cell_format=format)        #合并单元格设置单元格样式


writer.save()
#获取文件路径
path = writer.path


to_excle中具体的参数官方文档及各个博客都有较为详细的说明,可以按需所取,较为难找的是直接使用当前对象直接做合并单元格处理

merge_range方法需要传入的是六个参数,前四个是合并单元格的范围,'A1:D3'写成这样的格式后,只需传入一个参数,cell_format是需要传入的单元格格式,默认为None,对用的格式对象需用writer.book.add_format()方法,有兴趣的可以源码中看一下,该方法中默认有{'font_name': 'Arial', 'font_size': 10, 'theme': 1 * -1}三个,传入的参数都会被添加进去

链接中有对需要的格式设置的参数说明
The Format Class — XlsxWriter Documentation

再附上一份文档说明
DataFrame — pandas 1.4.3 documentation
 

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值