pandas100个骚操作:一行 pandas 代码搞定 Excel “条件格式”!
关键时间,第一时间送达!
大家好,我是你们的东哥。
本篇是pandas100个骚操作系列的第 7 篇:一行 pandas 代码搞定 Excel “条件格式”!
style
方法,二是要得益于pandas的链式法则
。df = pd.read_csv('test.csv')
df
bar
代码如下。background_gradient
,深颜色代表数值大,浅颜色代表数值小,代码如下。highlight_null
,表格所有缺失值都会变成高亮。pandas
的style
条件格式,用法非常简单。下面我们用链式法则将以上三个操作串起来,只需将每个方法加到前一个后面即可,代码如下。style
中常用的操作,还有很多其他操作比如高亮最大值、给所有负值标红等等,通过参数subset还可以指定某一列或者某几列的小范围内进行条件格式操作。applymap(color_negative_red)
# 高亮最大值
apply(highlight_max)
# 使某一列编程±前缀,小数点保留两位有效数字
format({'Coulumn': lambda x: '±{:.2f}'.format(abs(x))})
# 使用subset进行dataframe切片,选择指定的列
applymap(color_negative_red,
subset=pd.IndexSlice[2:5, ['B', 'D']])
seaborn
的各种风格。cm = sns.light_palette('green', as_cmap=True)
df.style.background_gradient(cmap=cm)
Ipython
的HTML
还可以实现炫酷的动态效果。def hover(hover_color='#ffff99'):
return dict(selector='tr:hover',
props=[('background-color', '%s' % hover_color)])
styles = [
hover(),
dict(selector='th', props=[('font-size', '150%'),
('text-align', 'center')]),
dict(selector='caption', props=[('caption-side', 'bottom')])
]
html = (df.style.set_table_styles(styles)
.set_caption('Hover to highlight.'))
html
style
条件格式的所有用法,可以参考pandas的官方文档。 赞 (0)