我想使用 Pandas 来设计我的表格,以下示例来自此站点: https://pandas.pydata.org/pandas-docs/stable/user_guide/style.html
现在的问题是,我使用 Pycharm。因此,在执行我的代码后,表格会根据这些值创建自己的颜色。但这不是我想要的。有没有人在使用 Pycharm 时遇到同样的问题?
import pandas as pd
import numpy as np
np.random.seed(24)
df = pd.DataFrame({'A': np.linspace(1, 10, 10)})
df = pd.concat([df, pd.DataFrame(np.random.randn(10, 4), columns=list('BCDE'))],
axis=1)
df.iloc[0, 2] = np.nan
def color_negative_red(val):
"""
Takes a scalar and returns a string with
the css property `'color: red'` for negative
strings, black otherwise.
"""
color = 'red' if val < 0 else 'black'
return 'color: %s' % color
s = df.style.applymap(color_negative_red)
我相信 pandas 样式器会生成 HTML 输出,这需要像 jupyter 这样的 HTML 前端来显示它们。 PyCharm“只是”一个控制台,不渲染 HTML。因此,您将得到
<pandas.io.formats.tyler.Styler...>
回复。
要验证您的代码是否有效,您可以输入
s.render()
,它应该会打印 HTML,从而产生正确的格式。
另请参阅此处。
添加到您的代码:
with open('test.html', 'w') as f:
print(s.to_html(), file=f)
在您的项目文件夹中将出现文件“test.html”,其中将是您的表格