Python Pandas excelWriter 定制格式,定制表头、渲染颜色等

ExcelWriter这个插件有个坑,就是已经设置好的格式是无法更改的,因此,由pandas转成excel的时候,必须将格式清除,尤其是表头的格式,代码如下:

import pandas.io.formats.excel
pandas.io.formats.excel.header_style = None

标准的保存pandas表到excel的形式为:

writer = pd.ExcelWriter(output_prefix + cv_excel_file_name)
df.to_excel(writer, 'Sheet1')  # 这里假设df是一个pandas的dataframe
writer.save()
writer.close()

如果要定制输出的excel格式,那么得在to_excel和save之间添加代码:

import  pandas as pd
import pandas.io.formats.excel
import openpyxl
import numpy as np
import xlsxwriter

pandas.io.formats.excel.header_style = None #新版不需要也可以
path =r'C:\Users\shzbabao\Desktop\Enterprise title information  2020.xls'
# df =pd.read_excel(path)
# # df.to_csv('cc.csv')
# df6=df.head()
# df7=df.tail()
# df8=df.ix[0].values
# df1 =df.index
# df2=df.columns
# df3=df.T
# df4=df[1:]
# df5 =df.mean()
# print("data:\n{0}".format(df6))
# print("data:\n{0}".format(df7))
# print("data:\n{0}".format(df8))
# print(df5)

# print(df.columns)
# print(df.head(20))

df = pd.read_excel(path,sheet_name='在系统下载下来的原文件')
# print(df.index)
# print(df)
df1 =df[['Number','Description','Description 2nd Line','Product Family','Box Label Type Approval Marks','TA Model No',
         'Product color','EAN Number for single unit','EAN Number for Master Carton','UPC 12',
         'UPC 14 for Inner Carton','UPC 14 for Master Carton','Category','Icons','Country Of Origin',
         'Item Tracking','Data 1 (FCC)','Data 2 (IC)','Data 3 (SRRC)','Data 4 (TELEC)',
         'Data 5 (KCC)','Data 6 (NCC)','Data 7 (SDPPI)','Data 8 (MCMC)','Data 9 (GB)',
         'Data 10 (IFT)','Company Address','Customer Label Info','Consumer Product Description']]
# df1.to_excel(r'C:\Users\shzbabao\Desktop\xx.xlsx',sheet_name='data',encoding='utf-8', index=False)
path2 =r'C:\Users\shzbabao\Desktop\xx.xlsx'
writer = pd.ExcelWriter(path2)
df1.to_excel(writer, 'Sheet1')  
workbook1 = writer.book
worksheets = writer.sheets
worksheet1 = worksheets['Sheet1']
# format1 = workbook1.add_format({'bg_color': '#FFC7CE', 'font_color': '#9C0006'})
format2 = workbook1.add_format({'bold':  True, 'align': 'center', 'valign': 'top','fg_color': 'white', 'text_wrap': False})

bold = workbook1.add_format({
        'bold':  True,  # 字体加粗
        'border': 1,  # 单元格边框宽度
        'align': 'left',  # 水平对齐方式
        'valign': 'vcenter',  # 垂直对齐方式
        'fg_color': '#F4B084',  # 单元格背景颜色
        'text_wrap': False,  # 是否自动换行
    })

#yellow = workbook1.add_format({'fg_color': '#FFEE99'})
worksheet1.set_column("B:AE", 26, cell_format=bold)#设置表格的样式
worksheet1.set_column("C:G", 46)
worksheet1.set_column("T:AE", 56)
worksheet1.set_row(0, cell_format=format2) #设置表头的样式
writer.save()
writer.close()
  • 4
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
### 回答1: Pandas 是一个 Python 数据分析库,它提供了高效地操作和处理数据的工具。ExcelWriter 是 Pandas 中的一个类,用于将 DataFrame 数据写入到 Excel 文件中。使用方法如下: ``` from pandas import DataFrame from pandas import ExcelWriter data = {'name': ['Mike', 'John', 'Bob'], 'age': [20, 21, 22]} df = DataFrame(data) writer = ExcelWriter('output.xlsx') df.to_excel(writer, 'Sheet1') writer.save() ``` 这样就可以将 DataFrame 的数据写入到一个名为 'output.xlsx' 的 Excel 文件中。 ### 回答2: Pandas是一个广泛使用的数据处理和分析工具,而ExcelWriter则是Pandas库的一个扩展模块,用于将数据导出Excel文档中。Pandas库可以将数据从多个数据源中提取,处理和转换,而ExcelWriter可以将处理过的数据导出Excel表格中,以实现分析和可视化。 使用ExcelWriter时,我们首先需要导入Pandas库中的ExcelWriter模块,然后以DataFrame的形式创建数据,最后使用ExcelWriter将DataFrame中的数据导出Excel表格中。在导出数据时,我们可以自定义Excel文档的表格样式和格式,比如颜色,字体,边框等。 另外,ExcelWriter还支持多个DataFrame同时导出到一个Excel文件中的不同sheet中,相比传统的手动复制黏贴方法,ExcelWriter简化了数据处理的操作流程,并且可以大大提高效率。此外,通过使用ExcelWriter,我们可以对数据进行自动化报告生成,以及导出可供其他人查看和使用的数据分析结果。 尽管ExcelWriter是一个非常好用的工具,但应该注意的是,如果数据量过大,则可能会导致ExcelWriter的运行速度变慢,此时可以考虑使用其他工具来处理数据或采用其他导出格式来实现数据分析。 ### 回答3: Pandas ExcelWriter是一个功能强大的工具,可以方便地将Pandas数据保存为Excel文件。使用Pandas ExcelWriter,我们可以对Excel操作进行更加精细的控制,例如在同一Excel文件中写入多个工作表、设置单元格格式、设置单元格注释等。 Pandas ExcelWriter主要有以下几个步骤: 1.创建ExcelWriter对象:创建一个ExcelWriter对象,并将要保存的Excel文件名作为参数传入。 例如,我们可以使用以下代码创建一个ExcelWriter对象: import pandas as pd writer = pd.ExcelWriter('data.xlsx') 2.写入数据:使用to_excel()方法将Pandas数据写入Excel文件。该方法接受多个参数,例如sheet_name、startrow、startcol等,用于设置工作表名称、数据写入的起始位置等。 例如,我们可以使用以下代码将数据写入工作表Sheet1: df = pd.DataFrame({'Name': ['Alice', 'Bob', 'Charlie'], 'Age': [25, 27, 30]}) df.to_excel(writer, sheet_name='Sheet1', index=False) 3.保存Excel文件:使用save()方法保存并关闭ExcelWriter对象。 例如,我们可以使用以下代码保存Excel文件: writer.save() 除了上述基本用法外,Pandas ExcelWriter还支持其他高级功能,例如多个工作表写入、设置单元格格式、设置单元格注释等。这些功能的具体用法可以参考Pandas官方文档。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值