pandas.io.formats.style.Styler.apply¶
- Styler.apply(func, axis=0, subset=None, **kwargs)[source]¶
Apply a function column-wise, row-wise, or table-wise.
Updates the HTML representation with the result.
- Parameters
- funcfunction
func
should take a Series or DataFrame (depending onaxis
), and return an object with the same shape. Must return a DataFrame with identical index and column labels whenaxis=None
.- axis{0 or ‘index’, 1 or ‘columns’, None}, default 0
Apply to each column (
axis=0
or'index'
), to each row (axis=1
or'columns'
), or to the entire DataFrame at once withaxis=None
.- subsetIndexSlice
A valid indexer to limit
data
to before applying the function. Consider using a pandas.IndexSlice.- **kwargsdict
Pass along to
func
.
- Returns
- selfStyler
Notes
The output shape of
func
should match the input, i.e. ifx
is the input row, column, or table (depending onaxis
), thenfunc(x).shape == x.shape
should be true.This is similar to
DataFrame.apply
, except thataxis=None
applies 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)