Categories
pandas python

How to highlight both a row and a column at once in pandas

I can highlight a column using the syntax

import pandas as pd
df = pd.DataFrame([[1,0],[0,1]])
df.style.apply(lambda x: ['background: lightblue' if x.name == 0 else '' for i in x])

enter image description here

Similarly I can highlight a row by passing axis=1:

df.style.apply(lambda x: ['background: lightgreen' if x.name == 0 else '' for i in x], 
axis=1)

enter image description here

However I can’t work out how to do both at once; the problem is that when I use applymap, I only get the values, not the names of the series that they come from.