話不多說,正文開始:
OX00 基本概念正式介紹分布前,先來區分統計學中的幾組概念: 1、 随機變量:用數值描述特定實驗一切可能出現的結果,它的取值事先不能确定,即具有随機性。例如,抛一枚硬币,其結果就是一個随機變量X。因為抛之前,不知道其是正面還是反面;可用1表示正面向上,0表示反面朝上。
離散型随機變量:隻能取有限個值的随機變量。
連續性随機變量:可以在一個或多個區間取任何值的随機變量。
2、 古典機率:古典機率通常又叫事前機率,是指當随機事件中各種可能發生的結果及其出現的次數都可以由演繹或外推法得知,而無需經過任何統計試驗即可計算各種可能發生結果的機率。
抛硬币,擲骰子都是古典概型。有兩個共同特點:
實驗樣本空間有限;
實驗中每個結果出現的可能性相同。
條件機率:指事件A 在事件B發生的條件下發生的機率。條件機率表示為:P(A|B)=P(AB)/P(B)
P(AB):聯合機率,表示兩個事件共同發生的機率。
3、大數定律講的是樣本均值收斂到總體均值,說白了就是期望;而中心極限定理告訴我們,當樣本足夠大時,樣本均值的分布會慢慢變成正态分布;大量獨立随機變量的均值經過标準化後收斂于正态分布。
期望:數學期望又稱為均值,它實質上是随機變量所有可能取值的一個權重平均,其權數就是取值的機率。
中心極限定律:即使X的分布不是正态的,那麼在很一般的條件下,當樣本量增加 ,
的分布趨于正态分布 .
4、離散型随機變量分布:離散型随機變量按照某種機率來取每個值!取每個值的機率在[0,1],且取各種值的機率之和等于1.。
所謂"離散"是指随機變量隻能取有限個或者可列舉無窮多個值。常見的離散分布有泊松分布、伯努利分布、二項分布、幾何分布、負二項分布和多項分布等。
連續随機變量分布:與離散變量類似,連續變量機率密度函數必須滿足f(x)>=0,且機率密度函數下面覆寫的總面積=1,且x落入[a,b]的機率為
常用的連續變量随機分布有:均勻分布,正态分布,指數分布
5、 機率函數與機率密度函數(似然函數)。 機率函數:是離散随機變量X在各特定取值上的機率P(x),其總和為1。 機率密度函數:與 機率密數f(x)不同,機率函數是對離散随機變量定義的,本身就代表該值的機率;而機率密度函數是對連續随機變量定義的,本身不是機率,它在某區間内的積分才是機率。6、頻數分布直方圖與頻率分布直方圖?橫軸:區間縱軸(頻數分布直方圖):落在區間的頻數 縱軸(頻率分布直方圖): 頻率/組距 (小矩形面積等于頻率,和為1)從頻率分布直方圖可以估計出的幾個資料: 衆數:頻率分布直方圖中最高矩形的底邊中點的橫坐标 。若是最高矩形有兩個,那麼衆數也有兩個! 算術平均數:頻率分布直方圖每組數值的中間值乘以面積後相加。(面積和為1,頻率也為1) 權重平均數:權重平均數就是所有的頻率乘以數值後的和相加。 中位數:把頻率分布直方圖分成兩個面積相等部分的平行于Y軸的直線橫坐标。 方差:(各矩形橫坐标中點-平均值) ^2 乘以各自矩形的面積 的和7、頻率分布直方圖與機率密度曲線之間關系:當樣本量不斷增加而組距不斷減小,每一組的平均頻率密度就非常接近組中值處的頻率密度,此時頻率密度直方圖的矩形頂邊就非常接近一光滑曲線,該曲線就是頻率密度函數曲線.
OX01 離散型分布
伯努利分布
伯努利分布就是我們常見的0-1分布,即它的随機變量隻取0或者1,各自的頻率分别取1−p和p,當x=0或者x=1時,我們數學定義為:
離散型随機變量期望:E(x)=∑x∗p(x),對于伯努利分布來說,E(x)=p
方差:D(x)=E(x2)−E2(x),D(x)=p*(1-p)
伯努利分布是其它分布的基礎,可以通過抛一次硬币來了解伯努利實驗。
二項分布:
在重複實驗中,如果每次實驗隻有兩種可能,而且得到相應結果的機率在每次實驗中不變,這就是二項分布!
抛N次硬币,正面朝上出現了k次的機率,這是二項分布。
抛一次硬币,正面朝上的機率,這是伯努利分布。
我們記成功機率為p(0≤p≤1),則失敗機率為q=1-p,則:其機率函數為:
其均值:
其方差:
假設某個試驗是伯努利試驗,其成功機率用p表示,那麼失敗的機率為q=1-p。進行n次這樣的試驗,成功了x次,則失敗次數為n-x,發生這種情況的機率可用下面公式來計算:
二項分布有兩點需要明白:1、保持二項分布試驗的次數n不變,随着成功機率p越接近0.5,二項分布逐漸對稱,且近似于均值為np、方差為npq的正态分布。(前三幅圖)
2、對于任意"成功"機率p,無論其距離0.5有多遠,随着試驗次數n的增加,二項分布與均值為np、方差為npq的正态分布越來越接近。(後三幅圖)
多項分布
多項分布(Multinomial distribution),它是二項分布的推廣。二項分布的試驗結果隻有兩個(成功和失敗),而多項分布的試驗結果則多于兩個。假設某個多項分布試驗可能發生結果的數量為k,依據曆史資料,每種結果發生的統計機率分别為p1, p2, …, pk。現在進行n次多項分布試驗,假設觀測到結果a1的次數為x1次,結果a2的次數為x2次,…,結果ak的次數為xk次,那麼多項分布的聯合機率函數為:
多項分布對其每一個結果都有均值和方差,分别為:
泊松分布
泊松機率分布描述的是在某段時間或某個空間内發生随機事件次數的機率,簡而言之就是: 根據過去某個随機事件在某段時間或某個空間内發生的平均次數,預測該随機事件在未來同樣長的時間或同樣大的空間内發生k次的機率。其機率品質函數為:
λ是過去某段時間或某個空間内随機事件發生的平均次數
抛硬币是二項分布,擲骰子是多項分布(六項分布),撒圖釘就是泊松分布!
泊松分布的機率函數可由二項分布取極限而來!
假定在過去的曆史中,某個随機事件在固定長度時間段發生的平均次數為λ,那麼就可以将固定長度的時間分成n等份;在每等份的時間内,随機事件發生的機率可以表示為λ/n。若n趨于無窮大,也就是這段時間被分成無數的小段,那麼λ/n的值将趨近于0,也就是在每個等份的時間内,該随機事件發生兩次或兩次以上是不可能的。根據以上假設條件,在固定長度時間内,随機事件發生k次的機率服從二項機率分布,可以表示為:
我們知道二項分布的期望值和方差分别為np和npq,則泊松分布的期望值和方差為:
觀察泊松分布的機率函數,可知泊松分布隻與
相關
二項分布,多項分布,都與實驗次數,和每次實驗機率相關,而泊松分布是實驗次數 的結果,是以泊松分布隻與某個事件平均發生次數相關!
當
越來越大時,泊松分布越來越接近正态分布,實際情況我們也使用正态分布替換泊松分布!也就是說,泊松分布可看作時離散變量中的正态分布!
由于泊松分布适用于描述某段時間(或某個空間)内随機事件發生的次數,是以它常用于預測某些事件的發生。例如:某家醫院在一定時間内到達的人數;超市收銀台在某段時間内的結賬人數;某段時間内發生自然災害的次數;某段時間内DNA序列的變異數;放射性原子核在一段時間内的衰變數等等。
超幾何分布
之前接觸到的二項分布,多項分布,泊松分布,幾何分布都是基于伯努利試驗。(每次實驗的機率值是相等的)。超幾何分布試驗結果的機率會随着每一次試驗的發生而改變。
以随機抽樣為例,二項分布試驗和幾何分布試驗是有放回抽樣(總體數量保持不變),是以每次試驗結果的發生機率是保持不變的;而超幾何分布試驗則是在有限總體中進行無放回抽樣(總體數量不斷減少),是以每次試驗結果發生的機率将發生變化。
超幾何分布是一種重要的離散型機率分布,其機率品質函數可以這樣定義:假設有限總體包含N個樣本,其中品質合格的為m個,則剩餘的N-m個為不合格樣本,如果從該有限總體中抽取出n個樣本,其中有k個是品質合格的機率為:
OX02 連續變量随機分布
均勻分布
均勻分布是最簡單的連續型分布,它的取值範圍是一個區間,比如(a,b).均勻分布随機變量x取值在該區間一個子區間的機率等于該區間寬度與區間(a,b)寬度b-a之比。
正态分布
當p一定,當n較小時,分布很不均勻,當n增大後,二項分布趨向于一個連續對稱分布--正态分布(高斯分布)。正态分布N(u,
)的機率密度函數為:
指數分布
在機率論和統計學中,指數分布(英語:Exponential distribution)是一種連續機率分布。指數分布可以用來表示獨立随機事件發生的時間間隔,比如旅客進入機場的時間間隔、打進客服中心電話的時間間隔等(引自維基百科)一個指數分布的機率密度函數是:
OX03 附錄
導入各種包:
import numpy as np #數組包from scipy import stats #統計計算包的統計子產品import matplotlib.pyplot as plt #繪圖包%matplotlib inline
伯努利分布
X=np.arange(0,2,1)p=0.5 #硬币朝上的機率pList=stats.bernoulli.pmf(X,p)plt.rcParams['font.sans-serif']=['SimHei']plt.rcParams['axes.unicode_minus'] = False #解決中文顯示問題plt.plot(X,pList,linestyle='None',marker='o') #不需要将兩點相連plt.vlines(X,0,pList) #繪制豎線,參數說明plt.vlines(x坐标值,y坐标最小值,y坐标最大值)plt.xlabel('随機變量:抛1次硬币結果為反面記為0,為正面記為1')plt.ylabel('機率值')plt.title('伯努利分布:p=%0.2f'%p)
二項分布
#1、定義随機變量:抛5次硬币,正面朝上的次數n=5 #做某件事的次數p=0.5 #做成功某件事的機率X=np.arange(0,n+1,1)#2、求對應分布的機率pList=stats.binom.pmf(X,n,p) #參數含義為:pmf(k次成功,共n次實驗,單次實驗成功機率為p)#3、繪圖plt.plot(X,pList,linestyle='None',marker='o')plt.vlines(X,0,pList)plt.xlabel('随機變量:抛5次硬币,正面朝上的次數')plt.ylabel('機率值')plt.title('二項分布:n=%i,p=%0.2f'%(n,p))
泊松分布
mu=2 #平均值:每天平均發生2起事故k=4 #該路口發生4起事故的機率X=np.arange(0,k+1,1)#2、求對應分布的機率pList=stats.poisson.pmf(X,mu) #參數含義為:pmf(發生X次事件,平均發生mu次)pList#3、繪圖plt.plot(X,pList,linestyle='None',marker='o')plt.vlines(X,0,pList)plt.xlabel('随機變量:該路口發生事故的次數')plt.ylabel('機率值')plt.title('泊松分布:平均值mu=%i'%mu)
正态分布
mu=0 #平均值sigma=1 #标準差X=np.arange(-5,5,0.1)#2、求對應分布的機率pList=stats.norm.pdf(X,mu,sigma) #參數含義為:pdf(發生X次事件,均值為mu,方差為sigma)#3、繪圖plt.plot(X,pList,linestyle='-')plt.xlabel('随機變量:x')plt.ylabel('機率值:y')plt.title('正态分布:$\mu$=%0.1f,$\sigma^2$=%0.1f'%(mu,sigma))
指數分布
lambd = 0.5# x = np.arange(0,15,0.1) y =lambd * np.exp(-lambd *x) plt.plot(x, y) plt.title('指數分布: $\lambda$=%.2f' % (lambd)) plt.xlabel('x') plt.ylabel('機率值', fontsize=15) plt.show()