python實現二項分佈、泊松分佈和正態分佈

from scipy.stats import binom,poisson,norm
import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy as np
%matplotlib inline
mpl.rcParams['font.sans-serif'] = ['SimHei']
mpl.rcParams['axes.unicode_minus'] = False
fig,ax = plt.subplots(1,1)
n = 100
p = 0.5
mean,var,skew,kurt = binom.stats(n,p,moments='mvsk')
print(mean,var,skew,kurt)
x = np.arange(binom.ppf(0.01, n, p),binom.ppf(0.99, n, p))
ax.plot(x, binom.pmf(x, n, p),'o')
plt.title('二項分佈概率質量函數')
plt.show()

fig,ax = plt.subplots(1,1)
λ = 2
mean,var,skew,kurt = poisson.stats(mu,moments='mvsk')
print (mean,var,skew,kurt)
x = np.arange(poisson.ppf(0.01, λ),poisson.ppf(0.99, λ))
ax.plot(x, poisson.pmf(x, mu),'o')
plt.title('泊松分佈概率質量函數')
plt.show()

fig,ax = plt.subplots(1,1)
mu = 0
std = 1.0
mean,var,skew,kurt = norm.stats(mu,std,moments='mvsk')
print (mean,var,skew,kurt)
x = np.linspace(norm.ppf(0.01,mu,std),norm.ppf(0.99,mu,std),100)
ax.plot(x, norm.pdf(x,mu,std),'b-',label = 'norm')
plt.title('正太分佈概率密度函數')
plt.show()

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章