将数字格式应用于Pandas HTML CSS样式

use*_*719 5 css python pandas

在Pandas中,有一个用于格式化CSS的新样式选项(http://pandas.pydata.org/pandas-docs/version/0.17.1/generated/pandas.core.style.Styler.html).

之前,当我想将我的数字变成会计/美元术语时,我会使用如下内容:

df = pd.DataFrame.from_dict({'10/01/2015': {'Issued': 200}}, orient='index')
html = df.to_html(formatters={'Issued': format_money})
Run Code Online (Sandbox Code Playgroud)

format_money函数:

def format_money(item):
    return '${:,.0f}'.format(item)
Run Code Online (Sandbox Code Playgroud)

现在我想使用Style选项,并保持我的$格式.我没有看到任何方法这样做.

例如样式格式将是这样的:

    s = df.style.bar(color='#009900')
    #df = df.applymap(config.format_money) -- Doesn't work
    html = s.render()
Run Code Online (Sandbox Code Playgroud)

这样会在我的HTML表格中添加条形图(Docs here:http://pandas.pydata.org/pandas-docs/stable/style.html):

来自http://pandas.pydata.org/pandas-docs/stable/style.html

所以基本上,我该如何做一些事情,比如添加条形图,并保留或者还将美元格式添加到表中?如果我之前尝试这样做,样式栏不起作用,因为现在他们无法判断数据是否为数字并且错误输出.如果我之后尝试这样做,它会取消样式.

Mat*_*yra 2

该功能尚未实现(版本 0.17.1) - 但有一个拉取请求(https://github.com/pydata/pandas/pull/11667),应该会在 0.18 中发布。现在您必须坚持使用格式化程序。