用python求函數(shù)概率 概率論 python

如何用python求出某已知正態(tài)分布的概率密度

Python正態(tài)分布概率計算方法,喜歡算法的伙伴們可以參考學(xué)習(xí)下。需要用到math模塊。先了解一下這個模塊方法,再來寫代碼會更好上手。

成都創(chuàng)新互聯(lián)公司自2013年創(chuàng)立以來,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目成都做網(wǎng)站、網(wǎng)站建設(shè)、外貿(mào)營銷網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元友好做網(wǎng)站,已為上家服務(wù),為友好各地企業(yè)和個人服務(wù),聯(lián)系電話:028-86922220

def st_norm(u):

'''標(biāo)準(zhǔn)正態(tài)分布'''

import math

x=abs(u)/math.sqrt(2)

T=(0.0705230784,0.0422820123,0.0092705272,

0.0001520143,0.0002765672,0.0000430638)

E=1-pow((1+sum([a*pow(x,(i+1))

for i,a in enumerate(T)])),-16)

p=0.5-0.5*E if u0 else 0.5+0.5*E

return(p)

def norm(a,sigma,x):

'''一般正態(tài)分布'''

u=(x-a)/sigma

return(st_norm(u))

while 1:

'''輸入一個數(shù)時默認(rèn)為標(biāo)準(zhǔn)正態(tài)分布

輸入三個數(shù)(空格隔開)時分別為期望、方差、x

輸入 stop 停止'''

S=input('please input the parameters:\n')

if S=='stop':break

try:

L=[float(s) for s in S.split()]

except:

print('Input error!')

continue

if len(L)==1:

print('f(x)=%.5f'%st_norm(L[0]))

elif len(L)==3:

print('f(x)=%.5f'%norm(L[0],L[1],L[2]))

else:

print('Input error!')

Python怎么計算概率

c(下面是總數(shù),上面是出現(xiàn)的次數(shù))??词阶颖容^容易明白。如:c(上面是2,下面是3)=(3*2)/(2*1)=3。上面的數(shù)規(guī)定幾個數(shù)相乘,數(shù)是從大往小

統(tǒng)計學(xué)入門級:常見概率分布+python繪制分布圖

如果隨機(jī)變量X的所有取值都可以逐個列舉出來,則稱X為離散型隨機(jī)變量。相應(yīng)的概率分布有二項(xiàng)分布,泊松分布。

如果隨機(jī)變量X的所有取值無法逐個列舉出來,而是取數(shù)軸上某一區(qū)間內(nèi)的任一點(diǎn),則稱X為連續(xù)型隨機(jī)變量。相應(yīng)的概率分布有正態(tài)分布,均勻分布,指數(shù)分布,伽馬分布,偏態(tài)分布,卡方分布,beta分布等。(真多分布,好恐怖~~)

在離散型隨機(jī)變量X的一切可能值中,各可能值與其對應(yīng)概率的乘積之和稱為該隨機(jī)變量X的期望值,記作E(X) 。比如有隨機(jī)變量,取值依次為:2,2,2,4,5。求其平均值:(2+2+2+4+5)/5 = 3。

期望值也就是該隨機(jī)變量總體的均值。 推導(dǎo)過程如下:

= (2+2+2+4+5)/5

= 1/5 2 3 + 4/5 + 5/5

= 3/5 2 + 1/5 4 + 1/5 5

= 0.6 2 + 0.2 4 + 0.2 5

= 60% 2 + 20% 4 + 20%*5

= 1.2 + 0.8 + 1

= 3

倒數(shù)第三步可以解釋為值為2的數(shù)字出現(xiàn)的概率為60%,4的概率為20%,5的概率為20%。 所以E(X) = 60% 2 + 20% 4 + 20%*5 = μ = 3。

0-1分布(兩點(diǎn)分布),它的隨機(jī)變量的取值為1或0。即離散型隨機(jī)變量X的概率分布為:P{X=0} = 1-p, P{X=1} = p,即:

則稱隨機(jī)變量X服從參數(shù)為p的0-1分布,記作X~B(1,p)。

在生活中有很多例子服從兩點(diǎn)分布,比如投資是否中標(biāo),新生嬰兒是男孩還是女孩,檢查產(chǎn)品是否合格等等。

大家非常熟悉的拋硬幣試驗(yàn)對應(yīng)的分布就是二項(xiàng)分布。拋硬幣試驗(yàn)要么出現(xiàn)正面,要么就是反面,只包含這兩個結(jié)果。出現(xiàn)正面的次數(shù)是一個隨機(jī)變量,這種隨機(jī)變量所服從的概率分布通常稱為 二項(xiàng)分布 。

像拋硬幣這類試驗(yàn)所具有的共同性質(zhì)總結(jié)如下:(以拋硬幣為例)

通常稱具有上述特征的n次重復(fù)獨(dú)立試驗(yàn)為n重伯努利試驗(yàn)。簡稱伯努利試驗(yàn)或伯努利試驗(yàn)概型。特別地,當(dāng)試驗(yàn)次數(shù)為1時,二項(xiàng)分布服從0-1分布(兩點(diǎn)分布)。

舉個栗子:拋3次均勻的硬幣,求結(jié)果出現(xiàn)有2個正面的概率 。

已知p = 0.5 (出現(xiàn)正面的概率) ,n = 3 ,k = 2

所以拋3次均勻的硬幣,求結(jié)果出現(xiàn)有2個正面的概率為3/8。

二項(xiàng)分布的期望值和方差 分別為:

泊松分布是用來描述在一 指定時間范圍內(nèi)或在指定的面積或體積之內(nèi)某一事件出現(xiàn)的次數(shù)的分布 。生活中服從泊松分布的例子比如有每天房產(chǎn)中介接待的客戶數(shù),某微博每月出現(xiàn)服務(wù)器癱瘓的次數(shù)等等。 泊松分布的公式為 :

其中 λ 為給定的時間間隔內(nèi)事件的平均數(shù),λ = np。e為一個數(shù)學(xué)常數(shù),一個無限不循環(huán)小數(shù),其值約為2.71828。

泊松分布的期望值和方差 分別為:

使用Python繪制泊松分布的概率分布圖:

因?yàn)檫B續(xù)型隨機(jī)變量可以取某一區(qū)間或整個實(shí)數(shù)軸上的任意一個值,所以通常用一個函數(shù)f(x)來表示連續(xù)型隨機(jī)變量,而f(x)就稱為 概率密度函數(shù) 。

概率密度函數(shù)f(x)具有如下性質(zhì) :

需要注意的是,f(x)不是一個概率,即f(x) ≠ P(X = x) 。在連續(xù)分布的情況下,隨機(jī)變量X在a與b之間的概率可以寫成:

正態(tài)分布(或高斯分布)是連續(xù)型隨機(jī)變量的最重要也是最常見的分布,比如學(xué)生的考試成績就呈現(xiàn)出正態(tài)分布的特征,大部分成績集中在某個范圍(比如60-80分),很小一部分往兩端傾斜(比如50分以下和90多分以上)。還有人的身高等等。

正態(tài)分布的定義 :

如果隨機(jī)變量X的概率密度為( -∞x+∞):

則稱X服從正態(tài)分布,記作X~N(μ,σ2)。其中-∞μ+∞,σ0, μ為隨機(jī)變量X的均值,σ為隨機(jī)變量X的標(biāo)準(zhǔn)差。 正態(tài)分布的分布函數(shù)

正態(tài)分布的圖形特點(diǎn) :

使用Python繪制正態(tài)分布的概率分布圖:

正態(tài)分布有一個3σ準(zhǔn)則,即數(shù)值分布在(μ-σ,μ+σ)中的概率為0.6827,分布在(μ-2σ,μ+2σ)中的概率為0.9545,分布在(μ-3σ,μ+3σ)中的概率為0.9973,也就是說大部分?jǐn)?shù)值是分布在(μ-3σ,μ+3σ)區(qū)間內(nèi),超出這個范圍的可能性很小很小,僅占不到0.3%,屬于極個別的小概率事件,所以3σ準(zhǔn)則可以用來檢測異常值。

當(dāng)μ=0,σ=1時,有

此時的正態(tài)分布N(0,1) 稱為標(biāo)準(zhǔn)正態(tài)分布。因?yàn)棣?,σ都是確定的取值,所以其對應(yīng)的概率密度曲線是一條 形態(tài)固定 的曲線。

對標(biāo)準(zhǔn)正態(tài)分布,通常用φ(x)表示概率密度函數(shù),用Φ(x)表示分布函數(shù):

假設(shè)有一次物理考試特別難,滿分100分,全班只有大概20個人及格。與此同時語文考試很簡單,全班絕大部分都考了90分以上。小明的物理和語文分別考了60分和80分,他回家后告訴家長,這時家長能僅僅從兩科科目的分值直接判斷出這次小明的語文成績要比物理好很多嗎?如果不能,應(yīng)該如何判斷呢?此時Z-score就派上用場了。 Z-Score的計算定義 :

即 將隨機(jī)變量X先減去總體樣本均值,再除以總體樣本標(biāo)準(zhǔn)差就得到標(biāo)準(zhǔn)分?jǐn)?shù)啦。如果X低于平均值,則Z為負(fù)數(shù),反之為正數(shù) 。通過計算標(biāo)準(zhǔn)分?jǐn)?shù),可以將任何一個一般的正態(tài)分布轉(zhuǎn)化為標(biāo)準(zhǔn)正態(tài)分布。

小明家長從老師那得知物理的全班平均成績?yōu)?0分,標(biāo)準(zhǔn)差為10,而語文的平均成績?yōu)?2分,標(biāo)準(zhǔn)差為4。分別計算兩科成績的標(biāo)準(zhǔn)分?jǐn)?shù):

物理:標(biāo)準(zhǔn)分?jǐn)?shù) = (60-40)/10 = 2

語文:標(biāo)準(zhǔn)分?jǐn)?shù) = (85-95)/4 = -2.5

從計算結(jié)果來看,說明這次考試小明的物理成績在全部同學(xué)中算是考得很不錯的,而語文考得很差。

指數(shù)分布可能容易和前面的泊松分布混淆,泊松分布強(qiáng)調(diào)的是某段時間內(nèi)隨機(jī)事件發(fā)生的次數(shù)的概率分布,而指數(shù)分布說的是 隨機(jī)事件發(fā)生的時間間隔 的概率分布。比如一班地鐵進(jìn)站的間隔時間。如果隨機(jī)變量X的概率密度為:

則稱X服從指數(shù)分布,其中的參數(shù)λ0。 對應(yīng)的分布函數(shù) 為:

均勻分布的期望值和方差 分別為:

使用Python繪制指數(shù)分布的概率分布圖:

均勻分布有兩種,分為 離散型均勻分布和連續(xù)型均勻分布 。其中離散型均勻分布最常見的例子就是拋擲骰子啦。拋擲骰子出現(xiàn)的點(diǎn)數(shù)就是一個離散型隨機(jī)變量,點(diǎn)數(shù)可能有1,2,3,4,5,6。每個數(shù)出現(xiàn)的概率都是1/6。

設(shè)連續(xù)型隨機(jī)變量X具有概率密度函數(shù):

則稱X服從區(qū)間(a,b)上的均勻分布。X在等長度的子區(qū)間內(nèi)取值的概率相同。對應(yīng)的分布函數(shù)為:

f(x)和F(x)的圖形分別如下圖所示:

均勻分布的期望值和方差 分別為:

python求概率和是條件應(yīng)該怎么寫

random.seed()用來設(shè)置初始值,這里random.seed(0)是從0開始。

random.choice() 用來隨機(jī)分配,這里表示隨機(jī)分配從20,20,40,50,60,70里隨機(jī)分配。

random.random() 用于隨機(jī)生成從0到1的浮點(diǎn)數(shù),即0=n=1.0。

“_” 是占位符,表示不在意變量的值,用來循環(huán)n次。

二、安裝python的科學(xué)計算包scipy

在python的科學(xué)計算包scipy的stats模塊計算出常見概率分布的概率值,并用matplotlib包進(jìn)行繪圖。

在notebook環(huán)境下安裝科學(xué)計算包scipy。如果已安裝忽略下面安裝步驟。

安裝步驟:

1)打開終端Anaconda Prompt

2)在conda中運(yùn)行以下命令:conda install scipy

如果存在多個python環(huán)境,先進(jìn)入想要的環(huán)境再安裝,比如我自己設(shè)置了py2和py3兩個環(huán)境,先在conda中進(jìn)入python環(huán)境:activate py3,再按上面步驟2執(zhí)行

如果還沒有安裝numpy包和matplotlib包,也按上述命令安裝這些包

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

R編程語言已經(jīng)成為統(tǒng)計分析中的事實(shí)標(biāo)準(zhǔn)。但在這篇文章中,我將告訴你在Python中實(shí)現(xiàn)統(tǒng)計學(xué)概念會是如此容易。我要使用Python實(shí)現(xiàn)一些離散和連續(xù)的概率分布。雖然我不會討論這些分布的數(shù)學(xué)細(xì)節(jié),但我會以鏈接的方式給你一些學(xué)習(xí)這些統(tǒng)計學(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計算每次觀測的概率質(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)λ的一段固定時間間隔內(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ù)計事件發(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時,該分布又被稱為均勻分布(uniform distribution)。嘗試不同的α和β取值,看看分布的形狀是如何變化的。

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

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

我將參數(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)計模型和分布的全部。

python中簡單的概率計算

實(shí)驗(yàn)室室間質(zhì)評項(xiàng)目繞不開的大佬——李金明,前一段時間看基因谷發(fā)了他的PPT(但是水印怎么是基因狐啊喂),正好從中了解些的臨床的相關(guān)規(guī)范(其實(shí)我想找生信相關(guān)要點(diǎn),但好像并沒有...)。

說實(shí)話,之前在上家做微生物多樣性相關(guān)科研服務(wù)時候,對參數(shù)這塊定的不是特別死,有時候流程固定參數(shù)達(dá)不到合同要求交付的測序量,經(jīng)常會改改overlap,改改最大錯配??赡芤彩且?yàn)檫@種比較低端,pipeline不斷,每天流水線式的能交100來個,頗有種來測序、送分析的意思。

簡單記錄下其中幾個概率的計算

題為:平常病人陽性率為10%,一次檢測25個標(biāo)本,求獲得6個陽性或6個以上結(jié)果的概率,概率為1-(獲得0個或1個或2個或3個或4個或5個陽性結(jié)果的概率)

注:細(xì)看ppt其實(shí)是有些小問題的,沒有寫P(5)

題為:一個實(shí)驗(yàn)室中,一個項(xiàng)目每次檢測結(jié)果陽性率為2%,100個樣本中出現(xiàn)8個陽性結(jié)果概率

題為:一次檢測100個標(biāo)本的項(xiàng)目中,2個陽性結(jié)果連續(xù)出現(xiàn)的概率

題為:一次檢測100個標(biāo)本的項(xiàng)目中,3個陽性結(jié)果連續(xù)出現(xiàn)的概率

注:樣本間交叉污染的概率解讀

首先假設(shè)每次檢測樣本,是陰性或是陽性都是獨(dú)立的事件,那么

做n個樣本,任意取其中r個,相鄰的情況有 n-r+1 種

做n個樣本,任意取其中r個,所有情況有 種

P=

假定檢測樣本的結(jié)果都是獨(dú)立的,那么其r個陽性連續(xù)出現(xiàn)概率大于P,則說明r次連續(xù)的陽性結(jié)果存在正相關(guān),可能是樣本間污染(小概率事件在小規(guī)模樣本數(shù)中發(fā)生)

那么,當(dāng)樣本數(shù)極大時候,如果其r個陽性連續(xù)出現(xiàn)概率小于P,那么也能說明r次連續(xù)的陽性結(jié)果存在負(fù)相關(guān),相鄰樣本間結(jié)果存在拮抗(小概率事件在大規(guī)模樣本數(shù)中仍不發(fā)生)

李金明:臨床基因擴(kuò)增檢測質(zhì)量保證(PPT全文)

網(wǎng)頁題目:用python求函數(shù)概率 概率論 python
網(wǎng)站地址:http://www.muchs.cn/article40/hggieo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化做網(wǎng)站、服務(wù)器托管、微信公眾號、品牌網(wǎng)站建設(shè)、外貿(mào)建站

廣告

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

成都app開發(fā)公司