pandas.io.formats.style.Styler.apply_index#
- Styler.apply_index(func, axis=0, level=None, **kwargs)[source]#
- Apply a CSS-styling function to the index or column headers, level-wise. - Updates the HTML representation with the result. - New in version 1.4.0. - Parameters
- funcfunction
- funcshould take a Series and return a string array of the same length.
- 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.applymap_index
- Apply a CSS-styling function to headers elementwise. 
- 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 - funcwill be the index as a Series, if an Index, or a level of a MultiIndex. The output of- funcshould be an identically sized array of CSS styles as strings, in the format ‘attribute: value; attribute2: value2; …’ or, if nothing is to be applied to that element, an empty string or- None.- 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 np.where(s == "B", "background-color: yellow;", "") >>> df.style.apply_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(s): ... return ["background-color: yellow;" if "x" in v else "" for v in s] >>> df.style.apply_index(highlight_x, axis="columns", level=[0, 2]) ... 