def kurtosis(self, axis: Optional[Axis]=None, numeric_only: bool=None) -> Union[(Scalar, 'Series')]:
    "\n        Return unbiased kurtosis using Fisher’s definition of kurtosis (kurtosis of normal == 0.0).\n        Normalized by N-1.\n\n        Parameters\n        ----------\n        axis : {index (0), columns (1)}\n            Axis for the function to be applied on.\n        numeric_only : bool, default None\n            Include only float, int, boolean columns. False is not supported. This parameter\n            is mainly for pandas compatibility.\n\n        Returns\n        -------\n        kurt : scalar for a Series, and a Series for a DataFrame.\n\n        Examples\n        --------\n\n        >>> df = ps.DataFrame({'a': [1, 2, 3, np.nan], 'b': [0.1, 0.2, 0.3, np.nan]},\n        ...                   columns=['a', 'b'])\n\n        On a DataFrame:\n\n        >>> df.kurtosis()\n        a   -1.5\n        b   -1.5\n        dtype: float64\n\n        On a Series:\n\n        >>> df['a'].kurtosis()\n        -1.5\n        "
    axis = validate_axis(axis)
    if ((numeric_only is None) and (axis == 0)):
        numeric_only = True

    def kurtosis(spark_column: Column, spark_type: DataType) -> Column:
        if isinstance(spark_type, BooleanType):
            spark_column = spark_column.cast(LongType())
        elif (not isinstance(spark_type, NumericType)):
            raise TypeError('Could not convert {} ({}) to numeric'.format(spark_type_to_pandas_dtype(spark_type), spark_type.simpleString()))
        return F.kurtosis(spark_column)
    return self._reduce_for_stat_function(kurtosis, name='kurtosis', axis=axis, numeric_only=numeric_only)
Return unbiased kurtosis using Fisher’s definition of kurtosis (kurtosis of normal == 0.0).
Normalized by N-1.

Parameters
----------
axis : {index (0), columns (1)}
    Axis for the function to be applied on.
numeric_only : bool, default None
    Include only float, int, boolean columns. False is not supported. This parameter
    is mainly for pandas compatibility.

Returns
-------
kurt : scalar for a Series, and a Series for a DataFrame.

Examples
--------

>>> df = ps.DataFrame({'a': [1, 2, 3, np.nan], 'b': [0.1, 0.2, 0.3, np.nan]},
...                   columns=['a', 'b'])

On a DataFrame:

>>> df.kurtosis()
a   -1.5
b   -1.5
dtype: float64

On a Series:

>>> df['a'].kurtosis()
-1.5
def kurtosis(self, axis: Optional[Axis]=None, numeric_only: bool=None) -> Union[(Scalar, 'Series')]:
    "\n        Return unbiased kurtosis using Fisher’s definition of kurtosis (kurtosis of normal == 0.0).\n        Normalized by N-1.\n\n        Parameters\n        ----------\n        axis : {index (0), columns (1)}\n            Axis for the function to be applied on.\n        numeric_only : bool, default None\n            Include only float, int, boolean columns. False is not supported. This parameter\n            is mainly for pandas compatibility.\n\n        Returns\n        -------\n        kurt : scalar for a Series, and a Series for a DataFrame.\n\n        Examples\n        --------\n\n        >>> df = ps.DataFrame({'a': [1, 2, 3, np.nan], 'b': [0.1, 0.2, 0.3, np.nan]},\n        ...                   columns=['a', 'b'])\n\n        On a DataFrame:\n\n        >>> df.kurtosis()\n        a   -1.5\n        b   -1.5\n        dtype: float64\n\n        On a Series:\n\n        >>> df['a'].kurtosis()\n        -1.5\n        "
    axis = validate_axis(axis)
    if ((numeric_only is None) and (axis == 0)):
        numeric_only = True

    def kurtosis(spark_column: Column, spark_type: DataType) -> Column:
        if isinstance(spark_type, BooleanType):
            spark_column = spark_column.cast(LongType())
        elif (not isinstance(spark_type, NumericType)):
            raise TypeError('Could not convert {} ({}) to numeric'.format(spark_type_to_pandas_dtype(spark_type), spark_type.simpleString()))
        return F.kurtosis(spark_column)
    return self._reduce_for_stat_function(kurtosis, name='kurtosis', axis=axis, numeric_only=numeric_only)