roupby.SeriesGroupBy.rolling ](pandas.core.groupby.SeriesGroupBy.rolling.html)
    * [ pandas.core.groupby.SeriesGroupBy.sample ](pandas.core.groupby.SeriesGroupBy.sample.html)
    * [ pandas.core.groupby.SeriesGroupBy.sem ](pandas.core.groupby.SeriesGroupBy.sem.html)
    * [ pandas.core.groupby.SeriesGroupBy.shift ](pandas.core.groupby.SeriesGroupBy.shift.html)
    * [ pandas.core.groupby.SeriesGroupBy.size ](pandas.core.groupby.SeriesGroupBy.size.html)
    * [ pandas.core.groupby.SeriesGroupBy.skew ](pandas.core.groupby.SeriesGroupBy.skew.html)
    * [ pandas.core.groupby.SeriesGroupBy.std ](pandas.core.groupby.SeriesGroupBy.std.html)
    * [ pandas.core.groupby.SeriesGroupBy.sum ](pandas.core.groupby.SeriesGroupBy.sum.html)
    * [ pandas.core.groupby.SeriesGroupBy.var ](pandas.core.groupby.SeriesGroupBy.var.html)
    * [ pandas.core.groupby.SeriesGroupBy.tail ](pandas.core.groupby.SeriesGroupBy.tail.html)
    * [ pandas.core.groupby.SeriesGroupBy.take ](pandas.core.groupby.SeriesGroupBy.take.html)
    * [ pandas.core.groupby.SeriesGroupBy.value_counts ](pandas.core.groupby.SeriesGroupBy.value_counts.html)
    * [ pandas.core.groupby.DataFrameGroupBy.boxplot ](pandas.core.groupby.DataFrameGroupBy.boxplot.html)
    * [ pandas.core.groupby.DataFrameGroupBy.hist ](pandas.core.groupby.DataFrameGroupBy.hist.html)
    * [ pandas.core.groupby.SeriesGroupBy.hist ](pandas.core.groupby.SeriesGroupBy.hist.html)
    * [ pandas.core.groupby.DataFrameGroupBy.plot ](pandas.core.groupby.DataFrameGroupBy.plot.html)
    * [ pandas.core.groupby.SeriesGroupBy.plot ](pandas.core.groupby.SeriesGroupBy.plot.html)
  * [ Resampling ](../resampling.html)
  * [ Style ](../style.html)
  * [ Plotting ](../plotting.html)
  * [ Options and settings ](../options.html)
  * [ Extensions ](../extensions.html)
  * [ Testing ](../testing.html)
  * [ Missing values ](../missing_value.html)

  * [ __ ](../../index.html)
  * [ API reference ](../index.html)
  * [ GroupBy ](../groupby.html)
  * pandas.core.... 

#  pandas.core.groupby.DataFrameGroupBy.agg  #

DataFrameGroupBy.  agg  (  _ func  =  None  _ , _ *  args  _ , _ engine  =
None  _ , _ engine_kwargs  =  None  _ , _ **  kwargs  _ )  [ [source]
](https://github.com/pandas-
dev/pandas/blob/v2.2.2/pandas/core/groupby/generic.py#L1420-L1505) #

    

Aggregate using one or more operations over the specified axis.

Parameters  :

    

**func** function, str, list, dict or None

    

Function to use for aggregating the data. If a function, must either work when
passed a DataFrame or when passed to DataFrame.apply.

Accepted combinations are:

  * function 

  * string function name 

  * list of functions and/or function names, e.g. ` [np.sum,  'mean']  `

  * dict of axis labels -> functions, function names or list of such. 

  * None, in which case ` **kwargs  ` are used with Named Aggregation. Here the output has one column for each element in ` **kwargs  ` . The name of the column is keyword, whereas the value determines the aggregation used to compute the values in the column. 

Can also accept a Numba JIT function with ` engine='numba'  ` specified. Only
passing a single function is supported with this engine.

If the ` 'numba'  ` engine is chosen, the function must be a user defined
function with ` values  ` and ` index  ` as the first and second arguments
respectively in the function signature. Each groupâs index will be passed to
the user defined function and optionally available for use.

***args**

    

Positional arguments to pass to func.

**engine** str, default None

    

  * ` 'cython'  ` : Runs the function through C-extensions from cython. 

  * ` 'numba'  ` : Runs the function through JIT compiled code from numba. 

  * ` None  ` : Defaults to ` 'cython'  ` or globally setting ` compute.use_numba  `

**engine_kwargs** dict, default None

    

  * For ` 'cython'  ` engine, there are no accepted ` engine_kwargs  `

  * For ` 'numba'  ` engine, the engine can accept ` nopython  ` , ` nogil