@doc(template_header, create_section_header('Parameters'), args_compat, window_agg_numba_parameters, kwargs_compat, create_section_header('Returns'), template_returns, create_section_header('See Also'), template_see_also, create_section_header('Notes'), numba_notes.replace('\n', '', 1), window_method='ewm', aggregation_description='(exponential weighted moment) mean', agg_method='mean')
def mean(self, *args, engine=None, engine_kwargs=None, **kwargs):
    if maybe_use_numba(engine):
        if (self.method == 'single'):
            ewma_func = generate_numba_ewma_func(engine_kwargs, self._com, self.adjust, self.ignore_na, self._deltas)
            numba_cache_key = ((lambda x: x), 'ewma')
        else:
            ewma_func = generate_ewma_numba_table_func(engine_kwargs, self._com, self.adjust, self.ignore_na, self._deltas)
            numba_cache_key = ((lambda x: x), 'ewma_table')
        return self._apply(ewma_func, numba_cache_key=numba_cache_key)
    elif (engine in ('cython', None)):
        if (engine_kwargs is not None):
            raise ValueError('cython engine does not accept engine_kwargs')
        nv.validate_window_func('mean', args, kwargs)
        deltas = (None if (self.times is None) else self._deltas)
        window_func = partial(window_aggregations.ewma, com=self._com, adjust=self.adjust, ignore_na=self.ignore_na, deltas=deltas)
        return self._apply(window_func)
    else:
        raise ValueError("engine must be either 'numba' or 'cython'")
@doc(template_header, create_section_header('Parameters'), args_compat, window_agg_numba_parameters, kwargs_compat, create_section_header('Returns'), template_returns, create_section_header('See Also'), template_see_also, create_section_header('Notes'), numba_notes.replace('\n', , 1), window_method='ewm', aggregation_description='(exponential weighted moment) mean', agg_method='mean')
def mean(self, *args, engine=None, engine_kwargs=None, **kwargs):
    if maybe_use_numba(engine):
        if (self.method == 'single'):
            ewma_func = generate_numba_ewma_func(engine_kwargs, self._com, self.adjust, self.ignore_na, self._deltas)
            numba_cache_key = ((lambda x: x), 'ewma')
        else:
            ewma_func = generate_ewma_numba_table_func(engine_kwargs, self._com, self.adjust, self.ignore_na, self._deltas)
            numba_cache_key = ((lambda x: x), 'ewma_table')
        return self._apply(ewma_func, numba_cache_key=numba_cache_key)
    elif (engine in ('cython', None)):
        if (engine_kwargs is not None):
            raise ValueError('cython engine does not accept engine_kwargs')
        nv.validate_window_func('mean', args, kwargs)
        deltas = (None if (self.times is None) else self._deltas)
        window_func = partial(window_aggregations.ewma, com=self._com, adjust=self.adjust, ignore_na=self.ignore_na, deltas=deltas)
        return self._apply(window_func)
    else:
        raise ValueError("engine must be either 'numba' or 'cython'")