首页 > 解决方案 > Jupyter 中 Pandas DataFrame 中的条件格式

问题描述

我有一个任意数据框,如下所示:

import pandas as pd
df = pd.DataFrame.from_dict({'col_1': [3, 2, 1, 0], 'col_2': ['a', 'b', 'c', 'd'], 'col_3':[100,-100, 50, -50,]})
df

数据框示例图片

有没有办法改变每个项目的格式,使列中较大的值是一种颜色,而较小的值是另一种颜色?最好的实现是:


例如,Excel 的条件格式如下所示:

excel条件格式

它对字符串或字符没有任何意义,但在其他方面表现得很好

标签: pythonpandasjupyter-notebookdata-visualization

解决方案


像许多令人惊奇的事情一样,你可以做到seaborn

这个:

import pandas as pd
df = pd.DataFrame.from_dict({'col_1': [3, 2, 1, 0], 'col_2': ['a', 'b', 'c', 'd'], 'col_3':[100,-100, 50, -50,]})

import seaborn as sns
cm = sns.light_palette("green", as_cmap=True)
s = df.style.background_gradient(cmap=cm)
s

这样做:

格式化表格


推荐阅读