是否可以将pandas dataframe样式对象导出为html

时间:2017-04-07 14:43:30

标签: python pandas dataframe

我使用.style格式化了一个pandas数据框,并希望将格式化的表格作为电子邮件发送出去。但是,样式对象与to_html函数不兼容,而是尝试使用.render()函数。

但是,.render()似乎删除了很多格式,例如表格边框消失,一些文字居中。我试图避免编辑由.render()生成的html字符串,但我知道这可能是不可能的。

将格式化表格作为电子邮件发送的其他选择是什么?

2 个答案:

答案 0 :(得分:3)

我遇到了同样的问题。所以在渲染Style对象后,我创建了一个文本文件并将Style对象写入其中。导出文本文件后,将格式更改为html,你应该没问题。

f=open("styled_dataframe.txt","w")
f.write(df.render()) # df is the styled dataframe
f.close()

答案 1 :(得分:1)

我也试图格式化类似于 to_html 函数的数据框,但更改了字体和颜色。大多数 Google 发现的示例都使用内置的 Pandas 样式器函数作为示例,但我需要更简单的东西。我最终得到的代码是:

invalid_scope

由于我对 python 和 pandas 比较陌生,我最初认为样式器已添加到原始数据帧中。我现在明白 df.style..... 返回一个样式化的数据框对象,它可以在最终呈现之前处理进一步的属性和属性更改。在这个示例中,我将样式化的数据帧渲染到一个文件中,然后可以使用浏览器打开该文件以查看结果。在我的实际应用程序中,我将样式化的数据帧呈现为一个字符串对象,然后按照 OP 最初想要的那样,将其作为 html mime 类型发送并通过电子邮件发送。