pandas.io.formats.style.Styler.apply — pandas 0.24.0rc1 documentation (original) (raw)

Styler. apply(func, axis=0, subset=None, **kwargs)[source]

Apply a function column-wise, row-wise, or table-wise, updating the HTML representation with the result.

Parameters: func : function func should take a Series or DataFrame (depending on axis), and return an object with the same shape. Must return a DataFrame with identical index and column labels when axis=None axis : int, str or None apply to each column (axis=0 or 'index') or to each row (axis=1 or 'columns') or to the entire DataFrame at once with axis=None subset : IndexSlice a valid indexer to limit data to before applying the function. Consider using a pandas.IndexSlice kwargs : dict pass along to func
Returns: self : Styler

Notes

The output shape of func should match the input, i.e. ifx is the input row, column, or table (depending on axis), then func(x).shape == x.shape should be true.

This is similar to DataFrame.apply, except that axis=Noneapplies the function to the entire DataFrame at once, rather than column-wise or row-wise.

Examples

def highlight_max(x): ... return ['background-color: yellow' if v == x.max() else '' for v in x] ... df = pd.DataFrame(np.random.randn(5, 2)) df.style.apply(highlight_max)