pandas.api.typing.SeriesGroupBy.cummax#
- SeriesGroupBy.cummax(numeric_only=False, **kwargs)[source]#
Cumulative max for each group.
Returns the cumulative maximum of values within each group. The result has the same size as the input, with each element representing the maximum of all preceding elements (including itself) within its group.
- Parameters:
- numeric_onlybool, default False
Include only float, int or boolean data.
- **kwargsdict, optional
Additional keyword arguments to be passed to the function, such as skipna, to control whether NA/null values are ignored.
- Returns:
- Series or DataFrame
Cumulative max for each group. Same object type as the caller.
See also
Series.cummaxApply function cummax to a Series.
DataFrame.cummaxApply function cummax to each row or column of a DataFrame.
Examples
For SeriesGroupBy:
>>> lst = ["a", "a", "a", "b", "b", "b"] >>> ser = pd.Series([1, 6, 2, 3, 1, 4], index=lst) >>> ser a 1 a 6 a 2 b 3 b 1 b 4 dtype: int64 >>> ser.groupby(level=0).cummax() a 1 a 6 a 6 b 3 b 3 b 4 dtype: int64
For DataFrameGroupBy:
>>> data = [[1, 8, 2], [1, 1, 0], [2, 6, 9]] >>> df = pd.DataFrame( ... data, columns=["a", "b", "c"], index=["cow", "horse", "bull"] ... ) >>> df a b c cow 1 8 2 horse 1 1 0 bull 2 6 9 >>> df.groupby("a").groups {1: ['cow', 'horse'], 2: ['bull']} >>> df.groupby("a").cummax() b c cow 8 2 horse 8 2 bull 6 9