import random
傳入陣列為概率分布列表例如[10, 90],返回值為下標索引,返回值返回0的概率為10%,返回1的概率為90%
def random_index
(rate)
: # ""
"隨機變數的概率函式"
"" # 引數rate為list<
int>
# 返回概率事件的下標索引
start =
0 index =
0 randnum = random.
randint(1
,sum
(rate)
)for index, scope in enumerate
(rate)
: start += scope
if randnum <= start:
break
return index
random.
randint(1
,10) # 產生 1 到 10 的乙個整數型隨機數
random.
random()
) # 產生 0 到 1 之間的隨機浮點數
random.
uniform
(1.1
,5.4
) # 產生 1.1 到 5.4 之間的隨機浮點數,區間可以不是整數
random.
choice
('tomorrow'
) # 從序列中隨機選取乙個元素
random.
randrange(1
,100,2
) # 生成從1到100的間隔為2的隨機整數
Excel按照指定概率生成選定範圍內數字
今天有這麼乙個需求,需要按照指定的概率比如20 40 40 的概率對應生成1 2 3這3個數字 excel中如何實現呢?應該用什麼函式呢?引數又是什麼呢?首先這個功能不是單一的excel函式可以解決的需要兩個函式,分別是lookup和rand 最終的結果如下 lookup rand 100,這裡面需...
Python生成隨機數和numpy生成隨機數
生成隨機數 module random has no attribute randin 這種錯誤,是因為你取得檔案名字和python系統函式名重複 1 random.random 隨機產生乙個隨機數,可以使用迴圈生成更多的數 random.randint 生成整數,uniform生成浮點數,unif...
Python隨機生成多維正態分佈
本文採用python庫numpy生成隨機正態分佈。其中均值和方差均使用偽隨機生成方式。import numpy as np 使用np.eye 2 生成單位矩陣,然後乘以乙個隨機生成得均勻分布值組成單位矩陣得值 x0 np.random.multivariate normal np.random.un...