概率分布有兩種類型:離散(discrete)概率分布和連續(continuous)概率分布。
離散概率分布也稱為概率質量函數(probability mass function)。離散概率分布的例子有伯努利分布(Bernoulli distribution)、二項分布(binomial distribution)、泊松分布(Poisson distribution)和幾何分布(geometric distribution)等。
連續概率分布也稱為概率密度函數(probability density function),它們是具有連續取值(例如一條實線上的值)的函數。正態分布(normal distribution)、指數分布(exponential distribution)和β分布(beta distribution)等都屬於連續概率分布。
1、兩點分布(伯努利分布)
伯努利試驗:
伯努利試驗是在同樣的條件下重復地、各次之間相互獨立地進行的一種試驗。
即只先進行一次伯努利試驗,該事件發生的概率為p,不發生的概率為1-p。這是一個最簡單的分布,任何一個只有兩種結果的隨機現象都服從0-1分布。
最常見的例子為拋硬幣
其中,
期望E = p
方差D = p*(1-p)^2+(1-p)*(0-p)^2 = p*(1-p)
2、二項分布(n重伯努利分布)(X~B(n,p))
即做n個兩點分布的實驗
其中,
E = np
D = np(1-p)
二項分布的應用場景主要是,對於已知次數n,關心發生k次成功。
,即為二項分布公式可求。
對於拋硬幣的問題,做100次實驗,觀察其概率分布函數:
from scipy.stats import binom
import matplotlib as mpl
import matplotlib.pyplot as plt
import numpy as np
## 設置屬性防止中文亂碼
mpl.rcParams['font.sans-serif'] = [u'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
#ppf:累積分布函數的反函數。q=0.01時,ppf就是p(X
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(u'二項分布概率質量函數')
plt.show()