pandas.io.formats.style.Styler.applymap_index¶
- Styler.applymap_index(func, axis=0, level=None, **kwargs)[source]¶
Apply a CSS-styling function to the index or column headers, elementwise.
Updates the HTML representation with the result.
New in version 1.4.0.
- Parameters
- funcfunction
func
should take a scalar and return a string.- axis{0, 1, “index”, “columns”}
The headers over which to apply the function.
- levelint, str, list, optional
If index is MultiIndex the level(s) over which to apply the function.
- **kwargsdict
Pass along to
func
.
- Returns
- selfStyler
See also
Styler.apply_index
Apply a CSS-styling function to headers level-wise.
Styler.apply
Apply a CSS-styling function column-wise, row-wise, or table-wise.
Styler.applymap
Apply a CSS-styling function elementwise.
Notes
Each input to
func
will be an index value, if an Index, or a level value of a MultiIndex. The output offunc
should be CSS styles as a string, in the format ‘attribute: value; attribute2: value2; …’ or, if nothing is to be applied to that element, an empty string orNone
.Examples
Basic usage to conditionally highlight values in the index.
>>> df = pd.DataFrame([[1,2], [3,4]], index=["A", "B"]) >>> def color_b(s): ... return "background-color: yellow;" if v == "B" else None >>> df.style.applymap_index(color_b)
Selectively applying to specific levels of MultiIndex columns.
>>> midx = pd.MultiIndex.from_product([['ix', 'jy'], [0, 1], ['x3', 'z4']]) >>> df = pd.DataFrame([np.arange(8)], columns=midx) >>> def highlight_x(v): ... return "background-color: yellow;" if "x" in v else None >>> df.style.applymap_index(highlight_x, axis="columns", level=[0, 2]) ...