Skip to main content
`Ctrl`+`K`

# pandas.core.groupby.DataFrameGroupBy.cumprod

DataFrameGroupBy.cumprod(axis=<no_default>, *args, **kwargs)

  Cumulative product for each group.

  Returns:
    Series or DataFrame

  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