@Substitution(desc=desc, name1=name1, name2=name2, axis_descr=axis_descr, min_count=_min_count_stub, see_also=see_also, examples=examples)
@Appender(_num_doc)
def stat_func(self, axis=None, skipna=None, level=None, numeric_only=None, min_count=0, **kwargs):
    if (name == 'sum'):
        nv.validate_sum(tuple(), kwargs)
    elif (name == 'prod'):
        nv.validate_prod(tuple(), kwargs)
    else:
        nv.validate_stat_func(tuple(), kwargs, fname=name)
    if (skipna is None):
        skipna = True
    if (axis is None):
        axis = self._stat_axis_number
    if (level is not None):
        return self._agg_by_level(name, axis=axis, level=level, skipna=skipna, min_count=min_count)
    return self._reduce(f, name, axis=axis, skipna=skipna, numeric_only=numeric_only, min_count=min_count)
@Substitution(desc=desc, name1=name1, name2=name2, axis_descr=axis_descr, min_count=_min_count_stub, see_also=see_also, examples=examples)
@Appender(_num_doc)
def stat_func(self, axis=None, skipna=None, level=None, numeric_only=None, min_count=0, **kwargs):
    if (name == 'sum'):
        nv.validate_sum(tuple(), kwargs)
    elif (name == 'prod'):
        nv.validate_prod(tuple(), kwargs)
    else:
        nv.validate_stat_func(tuple(), kwargs, fname=name)
    if (skipna is None):
        skipna = True
    if (axis is None):
        axis = self._stat_axis_number
    if (level is not None):
        return self._agg_by_level(name, axis=axis, level=level, skipna=skipna, min_count=min_count)
    return self._reduce(f, name, axis=axis, skipna=skipna, numeric_only=numeric_only, min_count=min_count)