若隨機變數x的密度函式為⎧⎩
⎨⎪⎪λ
αγ(α
)xα−
1e−λ
x,x≥
00,x
<0g
amma
γ(α)
=∫+∞
0xα−
1e−x
dx則稱x服從gamma分布,記為x~ga
gamma分布的期望和方差e
(x)=
λαγ(
α)∫+
∞0xα
e−λx
dx=γ
(α+1
)γ(α
)1λ=
αλe(
x2)=
λαγ(
α)∫+
∞0xα
+1e−
λxdx
=γ(α
+2)γ
(α)1
λ2=α
(α+1
)λ2v
ar(x
)=e(
x2)−
[e(x
)]2=
α(α+
1)λ2
−α2λ
2=αλ
2 其中期望式中的第二個等號處分別使用了
α 與α+
1 次分部積分法,與gamma函式的性質:γ(
α)=(
α−1)
!gamma分布的特例ga
(1,λ
)=ex
p(λ)
=λe−
λxga
(n2,
12)=
χ2(n
)=(1
2)n2
γ(n2
)xn2
−1e−
12x
gamma分布與泊松分布、指數分布的關係
若一段時間[0,1]內事件a發生的次數服從引數為
λ 的泊松分布
兩次事件發生的時間間隔將服從引數為
λ 的指數分布
n次事件發生的時間間隔服從x~ga
(α,λ
) 分布
若隨機變數x的密度函式為:⎧⎩
⎨⎪⎪λ
αγ(α
)x−α
−1exp(−λ
x),x
≥00,
x<0g
amma
γ(α)
=∫+∞
0xα−
1e−x
dx則稱x服從invgamma分布,記為 x~ig
gamma分布的期望和方差e(
x)=λ
αγ(α
)∫+∞
0x−α
e−λx
dx=γ
(α−1
)γ(α
)λ=λ
α−1e
(x2)
=λαγ
(α)∫
+∞0x
−α+1
e−λx
dx=γ
(α−2
)γ(α
)λ2=
λ2(α
−1)(
α−2)
var(
x)=e
(x2)
−[e(
x)]2
=λ2(
α−1)
(α−2
)−λ2
(α−1
)2=λ
2(α−
1)2(
α−2)
其中期望式中的第二個等號處分別使用了α 與
α+1 次分部積分法,與gamma函式的性質:γ(
α)=(
α−1)
!逆gamma分布特例ig
(α2,
αλ2)
=inv
−χ2(
α,λ)
=(αλ
2)α2
γ(α2
)x−α
2+1e
−αλ2
xgamma分布與逆gamma分布
若隨機變數x~ga
(α,λ
) ,則1x
~ig(
α,λ)
gamma分布
import numpy as np
import matplotlib.pyplot as plt
import scipy.stats as st
fig=plt.figure(figsize=(18,6))#確定繪圖區域尺寸
ax1=fig.add_subplot(1,2,1)#將繪圖區域分成左右兩塊
ax2=fig.add_subplot(1,2,2)
x=np.arange(0.01,15,0.01)#生成數列
z1=st.gamma.pdf(x,0.9,scale=2)#gamma(0.9,2)密度函式對應值
z2=st.gamma.pdf(x,1,scale=2)
z3=st.gamma.pdf(x,2,scale=2)
ax1.plot(x,z1,label="a<1")
ax1.plot(x,z2,label="a=1")
ax1.plot(x,z3,label="a>1")
ax1.legend(loc='best')
ax1.set_xlabel('x')
ax1.set_ylabel('p(x)')
ax1.set_title("gamma distribution lamda=2")
y1=st.gamma.pdf(x,1.5,scale=2)#gamma(1.5,2)密度函式對應值
y2=st.gamma.pdf(x,2,scale=2)
y3=st.gamma.pdf(x,2.5,scale=2)
y4=st.gamma.pdf(x,3,scale=2)
ax2.plot(x,y1,label="a=1.5")
ax2.plot(x,y2,label="a=2")
ax2.plot(x,y3,label="a=2.5")
ax2.plot(x,y4,label="a=3")
ax2.set_xlabel('x')
ax2.set_ylabel('p(x)')
ax2.set_title("gamma distribution lamda=2")
ax2.legend(loc="best")
plt.show()
逆gamma分布
from scipy.stats import invgamma
import matplotlib.pyplot as plt
fig, ax = plt.subplots(1, 1)
a=[4,5,6]
for i in a:
mean, var, skew, kurt = invgamma.stats(i,scale=2,moments='mvsk')
x = np.linspace(invgamma.ppf(0.01,i,scale=2),invgamma.ppf(0.99,i,scale=2), 100)#invgamma.ppf
ax.plot(x, invgamma.pdf(x,i,scale=2,), label="a="+str(i))
ax.legend(loc="best")
ax.set_xlabel('x')
ax.set_ylabel('p(x)')
ax.set_title("invgamma distribution lamda=2")
plt.show()
Gamma 分布與 Beta 分布及共軛的含義
gamma函式可將許多數學概念從整數集延拓到實數集合。x 0tx 1e tdt 我們來看對beta分布的改造 f x n n 1k 1 x k 1 1 x n kn n 1 k 1 n k xk 1 1 x n kn k 1 n k xk 1 1 x n k n 1 k n k 1 xk 1 1 x...
R與t分布(3) 分布的檢驗
我們依然用kolmogorov smirnov連續分布檢驗法來檢驗乙個連續分布是否是服從t分布。原假設為h0 資料集符合t分布 研究假設h1 樣本所來自的總體分布不符合t分布。令f0 x 表示預先假設的理論分布,fn x 表示隨機樣本的累計概率 頻率 函式.統計量d為 d max f0 x fn x...
R與指數分布(3)分布的檢驗
在 url 與正態分佈 3 分布的檢驗 url 中提到了kolmogorov smirnov分布檢驗,這是一種檢驗單一樣本是不是服從某一預先假設的特定分布的方法。以樣本資料的累計頻數分布與特定理論分布比較,若兩者間的差距很小,則推論該樣本取自某特定分布族,詳細的介紹要參考 url test url ...