def cdf(x):
    return (1 + erf(x / sqrt(2))) / 2

def skew(x, e=0, w=1, a=0):
    t = (x - e) / w
return 2 / w * pdf(t) * cdf(a * t)
n = 2 ** 10
e = 1.0
w = 2.0
x = linspace(-10, 10, n)
for a in range(-3, 4):
    p = skew(x, e, w, a)
plot(x, p)
show()
skew normal distribution in scipy