|
|
"""Statistics Functions.""" |
|
|
|
|
|
from typing import Union |
|
|
|
|
|
from numpy import ( |
|
|
mean as mean_np, |
|
|
ndarray, |
|
|
std, |
|
|
var as var_np, |
|
|
) |
|
|
from pandas import DataFrame, Series |
|
|
from scipy import stats |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def kurtosis_(data: Union[DataFrame, Series, ndarray]) -> float: |
|
|
"""Get Kurtosis. |
|
|
|
|
|
It is a measure of the "tailedness" of the probability distribution of a real-valued random variable. |
|
|
""" |
|
|
return stats.kurtosis(data) |
|
|
|
|
|
|
|
|
def skew_(data: Union[DataFrame, Series, ndarray]) -> float: |
|
|
"""Get Skewness. |
|
|
|
|
|
It is a measure of the asymmetry of the probability distribution of a |
|
|
real-valued random variable about its mean. |
|
|
""" |
|
|
return stats.skew(data) |
|
|
|
|
|
|
|
|
def mean_(data: Union[DataFrame, Series, ndarray]) -> float: |
|
|
"""Get Mean which is the average of the numbers.""" |
|
|
return mean_np(data) |
|
|
|
|
|
|
|
|
def std_dev_(data: Union[DataFrame, Series, ndarray]) -> float: |
|
|
"""Get Standard deviation that is a measure of the amount of variation or dispersion of a set of values.""" |
|
|
return std(data) |
|
|
|
|
|
|
|
|
def var_(data: Union[DataFrame, Series, ndarray]) -> float: |
|
|
"""Get Variance that is a measure of the amount of variation or dispersion of a set of values.""" |
|
|
return var_np(data) |
|
|
|