【发布时间】:2016-02-17 06:31:47
【问题描述】:
我创建了一个 pandas pivot_table 并使用 xlsxwriter 将其导出到 excel。但是,格式化并没有按照我的想法告诉它。我在 Stack Overflow 上查看了 xlsxwriter 文档和其他问题,但没有找到解决方案。我有一种感觉,我忽略了一些明显的东西。
# Write to Excel
path = 'some/path'
writer = pd.ExcelWriter(path, engine='xlsxwriter')
df.to_excel(writer, sheet_name='df')
set_column() 的列宽有效。所以我已经为我准备好了,这很好。但是wb.add_format() 子句中的'bold': False 和'align': 'left' 不是。
# Make it look nice
wb = writer.book
ws = writer.sheets['df']
format = wb.add_format({'bold': False,
'align': 'left'})
ws.set_column('A:C', None, format)
ws.set_column(0,0, 10.2)
ws.set_column(1,1, 25.2)
ws.set_column(2,2, 15.2)
writer.save()
或者,以下确实应用了格式,但它删除了单元格 B3 的内容:
ws.write('B3', None, format)
我可以让我的列左对齐而不是粗体吗?
更新: 我已经升级到 pandas 17.0 并且我已经将我的代码更新为:
format_bold = wb.add_format({'bold': False})
format_and_left = wb.add_format({'align': 'left', 'bold': False})
ws.set_column('A:A', 10.2, format_bold)
ws.set_column('B:B', 25.2, format_and_left)
ws.set_column('C:C', 15.2, format_bold)
仍然没有运气。我已经通过print pd.__version__ 确认我的解释器正在使用pandas 0.17.0 版。我还是做错了什么吗?
【问题讨论】:
-
您使用的是哪个版本的 Pandas? This was a known issue before Pandas 16
-
尝试使用 conda 进行更新。现在导入熊猫有一些问题。完成更新后我会回来查看。
标签: python excel pandas xlsxwriter