根据条件设计造型熊猫

时间:2017-08-26 13:17:01

标签: python pandas

我正在尝试根据条件为数据框的文本或单元格着色。这是我的代码。它有效:

def Highlight_Majors(val):

    color = 'blue' if val == "Austria" else 'black'
    return 'color: %s' % color

s = df.style.applymap(Highlight_Majors)
s

字符串"奥地利"现在在数据框中突出显示。 如果我需要突出显示多个国家/地区该怎么办?

这不起作用:

def Highlight_Majors(val):

    color = 'blue' if val == "Austria"|"Belgium" else 'black'
    return 'color: %s' % color

这样做的正确方法是什么?

2 个答案:

答案 0 :(得分:1)

使用in运算符进行集合成员资格测试:

def Highlight_Majors(val):
    return 'color: %s' % ('blue' if val in {"Austria", "Belgium"} else 'black')

答案 1 :(得分:0)

这个怎么样?

color = 'blue' if any([val==i for i in ["Austria", "Belgium"]]) else 'black'