pandas.core.groupby.SeriesGroupBy.cumprod — pandas 3.0.0.dev0+2098.g9c5b9ee823 documentation (original) (raw)

SeriesGroupBy.cumprod(numeric_only=False, *args, **kwargs)[source]#

Cumulative product for each group.

Parameters:

numeric_onlybool, default False

Include only float, int, boolean columns.

*argstuple

Positional arguments to be passed to func.

**kwargsdict

Additional/specific keyword arguments to be passed to the function, such as numeric_only and skipna.

Returns:

Series or DataFrame

Cumulative product for each group. Same object type as the caller.

See also

Series.groupby

Apply a function groupby to a Series.

DataFrame.groupby

Apply a function groupby to each row or column of a DataFrame.

Examples

For SeriesGroupBy:

lst = ["a", "a", "b"] ser = pd.Series([6, 2, 0], index=lst) ser a 6 a 2 b 0 dtype: int64 ser.groupby(level=0).cumprod() a 6 a 12 b 0 dtype: int64

For DataFrameGroupBy:

data = [[1, 8, 2], [1, 2, 5], [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 2 5 bull 2 6 9 df.groupby("a").groups {1: ['cow', 'horse'], 2: ['bull']} df.groupby("a").cumprod() b c cow 8 2 horse 16 10 bull 6 9