.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.transform  #

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

    

Call function producing a same-indexed DataFrame on each group.

Returns a DataFrame having the same indexes as the original object filled with
the transformed values.

Parameters  :

    

**f** function, str

    

Function to apply to each group. See the Notes section below for requirements.

Accepted inputs are:

  * String 

  * Python function 

  * 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.

If a string is chosen, then it needs to be the name of the groupby method you
want to 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 the global 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  ` and ` parallel  ` dictionary keys. The values must either be ` True  ` or ` False  ` . The default ` engine_kwargs  ` for the ` 'numba'  ` engine is ` {'nopython':  True,  'nogil':  False,  'parallel':  False}  ` and will be applied to the function 

****kwargs**

    

Keyword arguments to be passed into func.