首页 > 解决方案 > 将行值与列名进行比较并突出显示 Pandas 中的相交单元格

问题描述

我有一个这样的数据集,我想根据一行中的 date1 和 date2 值以及相应的列名 输入数据集突出显示相交的单元格

样本输出

标签: pythonpandasmatrixconditional-formatting

解决方案


我的评论实际上是不正确的。Pandas确实为 Jupyter 笔记本中的输出提供了条件格式/条件样式。文档在这里:https ://pandas.pydata.org/pandas-docs/stable/user_guide/style.html

实际上有几种方法可以实现这一点,但最简单的方法是检查每个单独单元格的值并设置其样式。

data = pd.DataFrame({
    'x': [1, 2, 3, 4],
    'y': [19, 10, 11, 12]
})

def yellow_highlight_max(series):
    is_max_val = series == series.max()
    return is_max_val.map({True: 'background-color: yellow', False: ''}).tolist()

data.style.apply(yellow_highlight_max)

您应该仔细查阅文档以了解您想要的用途。


推荐阅读