【发布时间】:2013-06-23 23:59:30
【问题描述】:
我被要求生成一些 Excel 报告。我目前正在大量使用 pandas 来处理我的数据,所以我很自然地想使用 pandas.ExcelWriter 方法来生成这些报告。然而,固定的列宽是一个问题。
到目前为止,我的代码很简单。假设我有一个名为“df”的数据框:
writer = pd.ExcelWriter(excel_file_path, engine='openpyxl')
df.to_excel(writer, sheet_name="Summary")
我查看了 pandas 代码,并没有看到任何设置列宽的选项。宇宙中是否有一个技巧可以使列自动调整到数据?或者,事后我可以对 xlsx 文件做些什么来调整列宽?
(我正在使用 OpenPyXL 库,并生成 .xlsx 文件 - 如果这有什么不同的话。)
谢谢。
【问题讨论】:
-
目前看起来不太可能,请在 github 上为此增强功能打开一个问题(也许是 PR?)。看起来并不难做到。
-
感谢 Jeff,我已提交问题。我不确定我是否有时间真正深入研究 pandas 代码库来解决它,但你永远不知道 :)
-
是的......看到你的问题......如果你需要帮助,请评论这个问题! (本质上需要将一个可选参数传递给
to_excel,可能是col_style=dict,其中包含col 标头样式元素(而不是默认的header_style,它现在似乎是硬编码的
标签: python excel pandas openpyxl