在Pycharm中使用Pandas(df.style.applymap)对表进行样式化?

hgc7kmma  于 2023-06-20  发布在  PyCharm
关注(0)|答案(2)|浏览(282)

我想用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)
ia2d9nvy

ia2d9nvy1#

我相信pandas样式器生成HTML输出,这需要像jupyter这样的HTML前端来显示它们。PyCharm“只是”一个控制台,不呈现HTML。因此,您将得到<pandas.io.formats.tyler.Styler...>响应。
要验证代码是否有效,可以输入s.render(),它应该会打印出HTML,从而生成正确的格式。
参见here

von4xj4u

von4xj4u2#

添加到您的代码:

with open('test.html', 'w') as f:
    print(s.to_html(), file=f)

在您的项目文件夹中将出现文件“test.html”,其中将是您的表

相关问题