python累計(jì)分布函數(shù) python累積分布圖

使用Python構(gòu)造經(jīng)驗(yàn)累積分布函數(shù)(ECDF)

對于一個樣本序列 ,經(jīng)驗(yàn)累積分布函數(shù) (Empirical Cumulative Distribution Function)可被定義為

成都創(chuàng)新互聯(lián)公司自2013年起,先為布爾津等服務(wù)建站,布爾津等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為布爾津企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

其中 是一個指示函數(shù),如果 ,指示函數(shù)取值為1,否則取值為0,因此 能反映在樣本中小于 的元素?cái)?shù)量占比。

根據(jù)格利文科定理(Glivenko–Cantelli Theorem),如果一個樣本滿足獨(dú)立同分布(IID),那么其經(jīng)驗(yàn)累積分布函數(shù) 會趨近于真實(shí)的累積分布函數(shù) 。

首先定義一個類,命名為ECDF:

我們采用均勻分布(Uniform)進(jìn)行驗(yàn)證,導(dǎo)入 uniform 包,然后進(jìn)行兩輪抽樣,第一輪抽取10次,第二輪抽取1000次,比較輸出的結(jié)果。

輸出結(jié)果為:

而我們知道,在真實(shí)的0到1均勻分布中, 時(shí), ,從模擬結(jié)果可以看出,樣本量越大,最終的經(jīng)驗(yàn)累積分布函數(shù)值也越接近于真實(shí)的累積分布函數(shù)值,因此格利文科定理得以證明。

怎樣用python的matplotlib模塊畫累積分布圖

下面的程序繪制隨機(jī)變量X的累積分布函數(shù)和數(shù)組p的累加結(jié)果

pl.plot(t, X.cdf(t))

pl.plot(t2, np.add.accumulate(p)*(t2[1]-t2[0]))

如何在Python中實(shí)現(xiàn)這五類強(qiáng)大的概率分布

R編程語言已經(jīng)成為統(tǒng)計(jì)分析中的事實(shí)標(biāo)準(zhǔn)。但在這篇文章中,我將告訴你在Python中實(shí)現(xiàn)統(tǒng)計(jì)學(xué)概念會是如此容易。我要使用Python實(shí)現(xiàn)一些離散和連續(xù)的概率分布。雖然我不會討論這些分布的數(shù)學(xué)細(xì)節(jié),但我會以鏈接的方式給你一些學(xué)習(xí)這些統(tǒng)計(jì)學(xué)概念的好資料。在討論這些概率分布之前,我想簡單說說什么是隨機(jī)變量(random variable)。隨機(jī)變量是對一次試驗(yàn)結(jié)果的量化。

舉個例子,一個表示拋硬幣結(jié)果的隨機(jī)變量可以表示成

Python

1

2

X = {1 如果正面朝上,

2 如果反面朝上}

隨機(jī)變量是一個變量,它取值于一組可能的值(離散或連續(xù)的),并服從某種隨機(jī)性。隨機(jī)變量的每個可能取值的都與一個概率相關(guān)聯(lián)。隨機(jī)變量的所有可能取值和與之相關(guān)聯(lián)的概率就被稱為概率分布(probability distributrion)。

我鼓勵大家仔細(xì)研究一下scipy.stats模塊。

概率分布有兩種類型:離散(discrete)概率分布和連續(xù)(continuous)概率分布。

離散概率分布也稱為概率質(zhì)量函數(shù)(probability mass function)。離散概率分布的例子有伯努利分布(Bernoulli distribution)、二項(xiàng)分布(binomial distribution)、泊松分布(Poisson distribution)和幾何分布(geometric distribution)等。

連續(xù)概率分布也稱為概率密度函數(shù)(probability density function),它們是具有連續(xù)取值(例如一條實(shí)線上的值)的函數(shù)。正態(tài)分布(normal distribution)、指數(shù)分布(exponential distribution)和β分布(beta distribution)等都屬于連續(xù)概率分布。

若想了解更多關(guān)于離散和連續(xù)隨機(jī)變量的知識,你可以觀看可汗學(xué)院關(guān)于概率分布的視頻。

二項(xiàng)分布(Binomial Distribution)

服從二項(xiàng)分布的隨機(jī)變量X表示在n個獨(dú)立的是/非試驗(yàn)中成功的次數(shù),其中每次試驗(yàn)的成功概率為p。

E(X) =?np, Var(X) =?np(1?p)

如果你想知道每個函數(shù)的原理,你可以在IPython筆記本中使用help file命令。?E(X)表示分布的期望或平均值。

鍵入stats.binom?了解二項(xiàng)分布函數(shù)binom的更多信息。

二項(xiàng)分布的例子:拋擲10次硬幣,恰好兩次正面朝上的概率是多少?

假設(shè)在該試驗(yàn)中正面朝上的概率為0.3,這意味著平均來說,我們可以期待有3次是硬幣正面朝上的。我定義擲硬幣的所有可能結(jié)果為k = np.arange(0,11):你可能觀測到0次正面朝上、1次正面朝上,一直到10次正面朝上。我使用stats.binom.pmf計(jì)算每次觀測的概率質(zhì)量函數(shù)。它返回一個含有11個元素的列表(list),這些元素表示與每個觀測相關(guān)聯(lián)的概率值。

您可以使用.rvs函數(shù)模擬一個二項(xiàng)隨機(jī)變量,其中參數(shù)size指定你要進(jìn)行模擬的次數(shù)。我讓Python返回10000個參數(shù)為n和p的二項(xiàng)式隨機(jī)變量。我將輸出這些隨機(jī)變量的平均值和標(biāo)準(zhǔn)差,然后畫出所有的隨機(jī)變量的直方圖。

泊松分布(Poisson Distribution)

一個服從泊松分布的隨機(jī)變量X,表示在具有比率參數(shù)(rate parameter)λ的一段固定時(shí)間間隔內(nèi),事件發(fā)生的次數(shù)。參數(shù)λ告訴你該事件發(fā)生的比率。隨機(jī)變量X的平均值和方差都是λ。

E(X) =?λ, Var(X) =?λ

泊松分布的例子:已知某路口發(fā)生事故的比率是每天2次,那么在此處一天內(nèi)發(fā)生4次事故的概率是多少?

讓我們考慮這個平均每天發(fā)生2起事故的例子。泊松分布的實(shí)現(xiàn)和二項(xiàng)分布有些類似,在泊松分布中我們需要指定比率參數(shù)。泊松分布的輸出是一個數(shù)列,包含了發(fā)生0次、1次、2次,直到10次事故的概率。我用結(jié)果生成了以下圖片。

你可以看到,事故次數(shù)的峰值在均值附近。平均來說,你可以預(yù)計(jì)事件發(fā)生的次數(shù)為λ。嘗試不同的λ和n的值,然后看看分布的形狀是怎么變化的。

現(xiàn)在我來模擬1000個服從泊松分布的隨機(jī)變量。

正態(tài)分布(Normal Distribution)

正態(tài)分布是一種連續(xù)分布,其函數(shù)可以在實(shí)線上的任何地方取值。正態(tài)分布由兩個參數(shù)描述:分布的平均值μ和方差σ2?。

E(X) =?μ, Var(X) =?σ2

正態(tài)分布的取值可以從負(fù)無窮到正無窮。你可以注意到,我用stats.norm.pdf得到正態(tài)分布的概率密度函數(shù)。

β分布(Beta Distribution)

β分布是一個取值在?[0, 1]?之間的連續(xù)分布,它由兩個形態(tài)參數(shù)α和β的取值所刻畫。

β分布的形狀取決于α和β的值。貝葉斯分析中大量使用了β分布。

當(dāng)你將參數(shù)α和β都設(shè)置為1時(shí),該分布又被稱為均勻分布(uniform distribution)。嘗試不同的α和β取值,看看分布的形狀是如何變化的。

指數(shù)分布(Exponential Distribution)

指數(shù)分布是一種連續(xù)概率分布,用于表示獨(dú)立隨機(jī)事件發(fā)生的時(shí)間間隔。比如旅客進(jìn)入機(jī)場的時(shí)間間隔、打進(jìn)客服中心電話的時(shí)間間隔、中文維基百科新條目出現(xiàn)的時(shí)間間隔等等。

我將參數(shù)λ設(shè)置為0.5,并將x的取值范圍設(shè)置為 $[0, 15]$ 。

接著,我在指數(shù)分布下模擬1000個隨機(jī)變量。scale參數(shù)表示λ的倒數(shù)。函數(shù)np.std中,參數(shù)ddof等于標(biāo)準(zhǔn)偏差除以 $n-1$ 的值。

結(jié)語(Conclusion)

概率分布就像蓋房子的藍(lán)圖,而隨機(jī)變量是對試驗(yàn)事件的總結(jié)。我建議你去看看哈佛大學(xué)數(shù)據(jù)科學(xué)課程的講座,Joe Blitzstein教授給了一份摘要,包含了你所需要了解的關(guān)于統(tǒng)計(jì)模型和分布的全部。

分享名稱:python累計(jì)分布函數(shù) python累積分布圖
URL地址:http://muchs.cn/article12/doecddc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供云服務(wù)器、微信小程序、關(guān)鍵詞優(yōu)化、Google、建站公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

綿陽服務(wù)器托管