Re: [問題] python random 問題
※ 引述《jimmylin212 (JimmyG)》之銘言:
想請問在python 的 random 函數裡面有沒有辦法做到以下需求呢
隨機在 0至1 中間選取 k 個數,k個數的總和又為 1
如果沒有辦法的話,有前輩有推薦的演算法嘛?
先謝謝了
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 118.160.172.91
→
04/14 17:05,
04/14 17:05
同意樓上
像下面這樣
import random
def normalized_sample(k):
samples=[]
for i in xrange(k):
samples.append(random.random())
N=sum(samples)
N_samples=[i/N for i in samples]
return N_samples
if __name__ == "__main__":
spam = normalized_sample(20)
print spam
print sum(spam)
會有點誤差應該還好
這…應該稱它是函式就好…不是演算法
我想你接下來要做的東西比較有可能是演算法
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.63.249
※ 編輯: KSJ 來自: 140.112.63.249 (04/14 17:15)
推
04/14 17:51, , 1F
04/14 17:51, 1F
討論串 (同標題文章)
完整討論串 (本文為第 2 之 2 篇):
Python 近期熱門文章
PTT數位生活區 即時熱門文章