我一直在努力研究如何根据索引名称设置突出显示 pandas 行的样式。我知道如何突出显示选定的行,但是当我必须根据索引突出显示时,代码不起作用。
设置
df = pd.DataFrame({'key': list('ABCD'), 'value': range(4)})
print(df)
key value
0 A 0
1 B 1
2 C 2
3 D 3
当键值为“B”或“D”时突出显示行
# this works
df.style.apply(lambda x: ['background: lightgreen'
if (x.key == 'B' or x.key == 'D')
else '' for i in x], axis=1)
根据索引名称突出显示行
# This DOES NOT work
df1 = df.set_index('key')
df1.style.apply(lambda x: ['background: lightgreen'
if (x.index == 'B' or x.index == 'D')
else '' for i in x], axis=1)
如何根据索引名称突出显示行?