簡體   English   中英

Pandas HTML輸出條件格式 - 如果值在范圍內,則突出顯示單元格

[英]Pandas HTML Output Conditional Formatting - Highlight cell if value in range

我正在使用pd.to_html()方法構建HTML格式的報告。 任何人都可以澄清我如何格式化具有-0.5和0.5之間的值的單元格以及特定數據幀列的綠色背景?

您可以使用style屬性(從pandas v0.17.1開始引入)自定義DataFrames格式。 做你想做的事的一個例子:

df = pd.DataFrame(np.random.randn(5,5), columns=list('ABCDE'))

def highlight_vals(val, min=-0.5, max=0.5, color='green'):
    if min < val < max:
        return 'background-color: %s' % color
    else:
        return ''

df.style.applymap(highlight_vals, subset=['B', 'C', 'D'])

給你

在此輸入圖像描述

有關完整示例,請參閱此筆記本: http//nbviewer.jupyter.org/gist/jorisvandenbossche/8b74f71734cd6d75a58c5a048261a7a7

有關如何格式化數據框的更多示例,請參閱文檔: http//pandas.pydata.org/pandas-docs/stable/style.html

要將輸出寫入文件,您可以執行以下操作:

with open('filename.html', 'w') as f:
    f.write(df.style.applymap(highlight_vals, subset=['B', 'C', 'D'])
                    .set_table_attributes("border=1").render())

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM