成人午夜视频全免费观看高清-秋霞福利视频一区二区三区-国产精品久久久久电影小说-亚洲不卡区三一区三区一区

隨機(jī)函數(shù)概率計(jì)算python,隨機(jī)數(shù)概率的計(jì)算公式

統(tǒng)計(jì)學(xué)入門(mén)級(jí):常見(jiàn)概率分布+python繪制分布圖

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

創(chuàng)新互聯(lián)建站長(zhǎng)期為上千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開(kāi)放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為新區(qū)企業(yè)提供專業(yè)的成都做網(wǎng)站、成都網(wǎng)站制作,新區(qū)網(wǎng)站改版等技術(shù)服務(wù)。擁有10余年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開(kāi)發(fā)。

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

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

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

= (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)對(duì)應(yīng)的分布就是二項(xiàng)分布。拋硬幣試驗(yàn)要么出現(xiàn)正面,要么就是反面,只包含這兩個(gè)結(jié)果。出現(xiàn)正面的次數(shù)是一個(gè)隨機(jī)變量,這種隨機(jī)變量所服從的概率分布通常稱為 二項(xiàng)分布 。

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

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

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

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

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

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

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

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

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

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

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

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

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

正態(tài)分布(或高斯分布)是連續(xù)型隨機(jī)變量的最重要也是最常見(jiàn)的分布,比如學(xué)生的考試成績(jī)就呈現(xiàn)出正態(tài)分布的特征,大部分成績(jī)集中在某個(gè)范圍(比如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)分布有一個(gè)3σ準(zhǔn)則,即數(shù)值分布在(μ-σ,μ+σ)中的概率為0.6827,分布在(μ-2σ,μ+2σ)中的概率為0.9545,分布在(μ-3σ,μ+3σ)中的概率為0.9973,也就是說(shuō)大部分?jǐn)?shù)值是分布在(μ-3σ,μ+3σ)區(qū)間內(nèi),超出這個(gè)范圍的可能性很小很小,僅占不到0.3%,屬于極個(gè)別的小概率事件,所以3σ準(zhǔn)則可以用來(lái)檢測(cè)異常值。

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

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

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

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

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

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

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

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

從計(jì)算結(jié)果來(lái)看,說(shuō)明這次考試小明的物理成績(jī)?cè)谌客瑢W(xué)中算是考得很不錯(cuò)的,而語(yǔ)文考得很差。

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

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

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

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

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

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

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

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

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

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

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

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

Python

1

2

X = {1 如果正面朝上,

2 如果反面朝上}

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

我鼓勵(lì)大家仔細(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ī)變量的知識(shí),你可以觀看可汗學(xué)院關(guān)于概率分布的視頻。

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

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

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

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

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

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

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

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

泊松分布(Poisson Distribution)

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

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

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

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

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

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

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

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

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

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

β分布(Beta Distribution)

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

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

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

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

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

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

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

結(jié)語(yǔ)(Conclusion)

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

用python生成隨機(jī)數(shù)的幾種方法

1 從給定參數(shù)的正態(tài)分布中生成隨機(jī)數(shù)

當(dāng)考慮從正態(tài)分布中生成隨機(jī)數(shù)時(shí),應(yīng)當(dāng)首先知道正態(tài)分布的均值和方差(標(biāo)準(zhǔn)差),有了這些,就可以調(diào)用python中現(xiàn)有的模塊和函數(shù)來(lái)生成隨機(jī)數(shù)了。這里調(diào)用了Numpy模塊中的random.normal函數(shù),由于邏輯非參簡(jiǎn)單,所有直接貼上代碼如下:

import numpy as np# 定義從正態(tài)分布中獲取隨機(jī)數(shù)的函數(shù)def get_normal_random_number(loc, scale): """ :param loc: 正態(tài)分布的均值 :param scale: 正態(tài)分布的標(biāo)準(zhǔn)差 :return:從正態(tài)分布中產(chǎn)生的隨機(jī)數(shù) """ # 正態(tài)分布中的隨機(jī)數(shù)生成 number = np.random.normal(loc=loc, scale=scale) # 返回值 return number# 主模塊if __name__ == "__main__": # 函數(shù)調(diào)用 n = get_normal_random_number(loc=2, scale=2) # 打印結(jié)果 print(n) # 結(jié)果:3.275192443463058

2 從給定參數(shù)的均勻分布中獲取隨機(jī)數(shù)的函數(shù)

考慮從均勻分布中獲取隨機(jī)數(shù)的時(shí)候,要事先知道均勻分布的下界和上界,然后調(diào)用Numpy模塊的random.uniform函數(shù)生成隨機(jī)數(shù)。

import numpy as np# 定義從均勻分布中獲取隨機(jī)數(shù)的函數(shù)def get_uniform_random_number(low, high): """ :param low: 均勻分布的下界 :param high: 均勻分布的上界 :return: 從均勻分布中產(chǎn)生的隨機(jī)數(shù) """ # 均勻分布的隨機(jī)數(shù)生成 number = np.random.uniform(low, high) # 返回值 return number# 主模塊if __name__ == "__main__": # 函數(shù)調(diào)用 n = get_uniform_random_number(low=2, high=4) # 打印結(jié)果 print(n) # 結(jié)果:2.4462417140153114

3 按照指定概率生成隨機(jī)數(shù)

有時(shí)候我們需要按照指定的概率生成隨機(jī)數(shù),比如已知盒子中每種顏色的球的比例,猜測(cè)下一次取出的球的顏色。在這里介紹的問(wèn)題和上面的例子相似,要求給定一個(gè)概率列表,從列表對(duì)應(yīng)的數(shù)字列表或區(qū)間列表中生成隨機(jī)數(shù),分兩部分討論。

3.1 按照指定概率從數(shù)字列表中隨機(jī)抽取數(shù)字

假設(shè)給定一個(gè)數(shù)字列表和一個(gè)與之對(duì)應(yīng)的概率列表,兩個(gè)列表對(duì)應(yīng)位置的元素組成的元組即表示該數(shù)字在數(shù)字列表中以多大的概率出現(xiàn),那么如何根據(jù)這些已知條件從數(shù)字列表中按概率抽取隨機(jī)數(shù)呢?在這里我們考慮用均勻分布來(lái)模擬概率,代碼如下:

import numpy as npimport random# 定義從均勻分布中獲取隨機(jī)數(shù)的函數(shù)def get_uniform_random_number(low, high): """ :param low: 均勻分布的下界 :param high: 均勻分布的上界 :return: 從均勻分布中產(chǎn)生的隨機(jī)數(shù) """ # 均勻分布的隨機(jī)數(shù)生成 number = np.random.uniform(low, high) # 返回值 return number# 定義從一個(gè)數(shù)字列表中以一定的概率取出對(duì)應(yīng)區(qū)間中數(shù)字的函數(shù)def get_number_by_pro(number_list, pro_list): """ :param number_list:數(shù)字列表 :param pro_list:數(shù)字對(duì)應(yīng)的概率列表 :return:按概率從數(shù)字列表中抽取的數(shù)字 """ # 用均勻分布中的樣本值來(lái)模擬概率 x = random.uniform(0, 1) # 累積概率 cum_pro = 0.0 # 將可迭代對(duì)象打包成元組列表 for number, number_pro in zip(number_list, pro_list): cum_pro += number_pro if x cum_pro: # 返回值 return number# 主模塊if __name__ == "__main__": # 數(shù)字列表 num_list = [1, 2, 3, 4, 5] # 對(duì)應(yīng)的概率列表 pr_list = [0.1, 0.3, 0.1, 0.4, 0.1] # 函數(shù)調(diào)用 n = get_number_by_pro(number_list=num_list, pro_list=pr_list) # 打印結(jié)果 print(n) # 結(jié)果:1

3.2 按照指定概率從區(qū)間列表中的某個(gè)區(qū)間內(nèi)生成隨機(jī)數(shù)

給定一個(gè)區(qū)間列表和一個(gè)與之對(duì)應(yīng)的概率列表,兩個(gè)列表相應(yīng)位置的元素組成的元組即表示某數(shù)字出現(xiàn)在某區(qū)間內(nèi)的概率是多少,已知這些,我們?nèi)绾紊呻S機(jī)數(shù)呢?這里我們通過(guò)兩次使用均勻分布達(dá)到目的,代碼如下:

import numpy as npimport random# 定義從均勻分布中獲取隨機(jī)數(shù)的函數(shù)def get_uniform_random_number(low, high): """ :param low: 均勻分布的下界 :param high: 均勻分布的上界 :return: 從均勻分布中產(chǎn)生的隨機(jī)數(shù) """ # 均勻分布的隨機(jī)數(shù)生成 number = np.random.uniform(low, high) # 返回值 return number# 定義從一個(gè)數(shù)字列表中以一定的概率取出對(duì)應(yīng)區(qū)間中數(shù)字的函數(shù)def get_number_by_pro(number_list, pro_list): """ :param number_list:數(shù)字列表 :param pro_list:數(shù)字對(duì)應(yīng)的概率列表 :return:按概率從數(shù)字列表中抽取的數(shù)字 """ # 用均勻分布中的樣本值來(lái)模擬概率 x = random.uniform(0, 1) # 累積概率 cum_pro = 0.0 # 將可迭代對(duì)象打包成元組列表 for number, number_pro in zip(number_list, pro_list): cum_pro += number_pro if x cum_pro: # 從區(qū)間[number. number - 1]上隨機(jī)抽取一個(gè)值 num = get_uniform_random_number(number, number - 1) # 返回值 return num# 主模塊if __name__ == "__main__": # 數(shù)字列表 num_list = [1, 2, 3, 4, 5] # 對(duì)應(yīng)的概率列表 pr_list = [0.1, 0.3, 0.1, 0.4, 0.1] # 函數(shù)調(diào)用 n = get_number_by_pro(number_list=num_list, pro_list=pr_list) # 打印結(jié)果 print(n) # 結(jié)果:3.49683787011193

python用什么函數(shù)產(chǎn)生隨機(jī)數(shù)

在python中用于生成隨機(jī)數(shù)的模塊是random,在使用前需要import

random.random:

random.random():生成一個(gè)0-1之間的隨機(jī)浮點(diǎn)數(shù).例:

[python] view plain copy

import random

print random.random()

# 0.87594424128

random.uniform

random.uniform(a, b):生成[a,b]之間的浮點(diǎn)數(shù).例:

[python] view plain copy

import random

print random.uniform(0, 10)

# 5.27462570463

random.ranint

random.randint(a, b):生成[a,b]之間的整數(shù).例:

[python] view plain copy

import random

print random.randint(0, 10)

# 8

random.randrange

random.randrange(a, b, step):在指定的集合[a,b)中,以step為基數(shù)隨機(jī)取一個(gè)數(shù).如random.randrange(0, 20, 2),相當(dāng)于從[0,2,4,6,...,18]中隨機(jī)取一個(gè).例:

[python] view plain copy

import random

print random.randrange(0, 20, 2)

# 14

網(wǎng)站題目:隨機(jī)函數(shù)概率計(jì)算python,隨機(jī)數(shù)概率的計(jì)算公式
文章位置:http://jinyejixie.com/article22/dssoejc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供用戶體驗(yàn)、企業(yè)建站、定制網(wǎng)站、響應(yīng)式網(wǎng)站營(yíng)銷(xiāo)型網(wǎng)站建設(shè)、微信小程序

廣告

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

營(yíng)銷(xiāo)型網(wǎng)站建設(shè)
壶关县| 黑山县| 合肥市| 瑞丽市| 夹江县| 滨海县| 阳东县| 张北县| 临汾市| 乌拉特前旗| 康马县| 海口市| 北碚区| 广德县| 鸡泽县| 洛扎县| 长乐市| 汉中市| 北安市| 涪陵区| 天津市| 荔波县| 延寿县| 宜阳县| 达拉特旗| 三江| 松原市| 龙州县| 安岳县| 美姑县| 岐山县| 嘉禾县| 马龙县| 康乐县| 柳江县| 盐源县| 永春县| 乌拉特后旗| 襄垣县| 湘西| 江安县|