Skip to content

Instantly share code, notes, and snippets.

@Parassharmaa
Last active June 10, 2019 11:37
Show Gist options
  • Save Parassharmaa/fb6dd9df154df21369557aaae2d57c95 to your computer and use it in GitHub Desktop.
Save Parassharmaa/fb6dd9df154df21369557aaae2d57c95 to your computer and use it in GitHub Desktop.
Statistics: Kurtosis & Describe
from collections import namedtuple
import statistics as st
from collections import Counter
def kurtosis(a):
N = len(a)
mean = st.mean(a)
sd = st.variance(a)**0.5
kurt = sum([(i-mean)**4 for i in a])/N/sd**4
return kurt
DescribeResults = namedtuple("DescribeResults",
("nobs", "minmax", "mean", "variance",
"median", "skewness", "kurtosis"))
def describe(a):
nobs = len(a)
minmax = (min(a), max(a))
mean = st.mean(a)
var = st.variance(a)
med = st.median(a)
mo = Counter(a).most_common()[0][0]
skewness = (mean-mo)/var**0.5
kurt = kurtosis(a)
return DescribeResults(nobs, minmax, mean, var, med, skewness, kurt)
if __name__ == "__main__":
a = [1, 2, 10]
print(describe(a))
import statistics as st
from collections import Counter
def kurtosis(a):
N = len(a)
mean = st.mean(a)
sd = st.variance(a)**0.5
kurt = sum([(i-mean)**4/N for i in a])/sd**4
return kurt
def describe(a):
nobs = len(a)
minmax = (min(a), max(a))
mean = st.mean(a)
var = st.variance(a)
med = st.median(a)
mo = Counter(a).most_common()[0][0]
skewness = (mean-mo)/var**0.5
kurt = kurtosis(a)
return nobs, minmax, mean, var, med, skewness, kurt
if __name__ == "__main__":
a = [1,2,3,4,5]
print(describe(a))
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment