pandas.DataFrame.cummax — pandas 2.2.3 documentation (original) (raw)

DataFrame.cummax(axis=None, skipna=True, *args, **kwargs)[source]#

Return cumulative maximum over a DataFrame or Series axis.

Returns a DataFrame or Series of the same size containing the cumulative maximum.

Parameters:

axis{0 or ‘index’, 1 or ‘columns’}, default 0

The index or the name of the axis. 0 is equivalent to None or ‘index’. For Series this parameter is unused and defaults to 0.

skipnabool, default True

Exclude NA/null values. If an entire row/column is NA, the result will be NA.

*args, **kwargs

Additional keywords have no effect but might be accepted for compatibility with NumPy.

Returns:

Series or DataFrame

Return cumulative maximum of Series or DataFrame.

Examples

Series

s = pd.Series([2, np.nan, 5, -1, 0]) s 0 2.0 1 NaN 2 5.0 3 -1.0 4 0.0 dtype: float64

By default, NA values are ignored.

s.cummax() 0 2.0 1 NaN 2 5.0 3 5.0 4 5.0 dtype: float64

To include NA values in the operation, use skipna=False

s.cummax(skipna=False) 0 2.0 1 NaN 2 NaN 3 NaN 4 NaN dtype: float64

DataFrame

df = pd.DataFrame([[2.0, 1.0], ... [3.0, np.nan], ... [1.0, 0.0]], ... columns=list('AB')) df A B 0 2.0 1.0 1 3.0 NaN 2 1.0 0.0

By default, iterates over rows and finds the maximum in each column. This is equivalent to axis=None or axis='index'.

df.cummax() A B 0 2.0 1.0 1 3.0 NaN 2 3.0 1.0

To iterate over columns and find the maximum in each row, use axis=1

df.cummax(axis=1) A B 0 2.0 2.0 1 3.0 NaN 2 1.0 1.0