第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

如何獲得總和等于M的N個(gè)隨機(jī)整數(shù)

如何獲得總和等于M的N個(gè)隨機(jī)整數(shù)

繁華開滿天機(jī) 2022-01-20 17:25:32
我想列出 N 個(gè)隨機(jī) INTEGER 數(shù),其總和等于 M 數(shù)。我在 Python 中使用了 numpy 和 dirichlet 函數(shù),但這會(huì)生成雙隨機(jī)數(shù)數(shù)組,我想生成整數(shù)隨機(jī)數(shù)。import numpy as np  np.random.dirichlet(np.ones(n))*m解決方案可以使用其他分布,感覺就是解決問題。
查看完整描述

3 回答

?
元芳怎么了

TA貢獻(xiàn)1798條經(jīng)驗(yàn) 獲得超7個(gè)贊

使用它的問題dirichlet在于它是實(shí)數(shù)的分布。它將產(chǎn)生一個(gè)范圍內(nèi)的數(shù)字向量(0,1),總和為 1,但截?cái)嗷蛏崛胨鼈兛赡軙?huì)消除對(duì)特定總和的保證。在這篇文章之后,我們可以從分布中獲得所需的效果multinomial(使用np.random.multinomial),如下所示:


from numpy.random import multinomial


np.random.multinomial(m, np.ones(n)/n)

這將生成和n之間的整數(shù),其和為,繪制給定位置的概率相等。可視化這一點(diǎn)的最簡(jiǎn)單方法是將結(jié)果視為描述從一組固定對(duì)象(例如,從 1 到 6 的整數(shù)繪制的骰子)中的一組繪圖,其中最終數(shù)組是相應(yīng)對(duì)象的次數(shù)畫??倲?shù)將始終與給定的總平局(擲骰)數(shù)相加。0mm


查看完整回答
反對(duì) 回復(fù) 2022-01-20
?
嗶嗶one

TA貢獻(xiàn)1854條經(jīng)驗(yàn) 獲得超8個(gè)贊

請(qǐng)注意,Dirichlet 分布可用于參數(shù)化多項(xiàng)式,從而控制 bin 的平滑度或“均勻性”,例如:


import numpy as np 


m = 50

n = 5

s = 0.1


np.random.multinomial(m, np.random.dirichlet(np.ones(n) * s))

主要參數(shù)化為@Bonfire,但較大的值s(例如 try s=100)導(dǎo)致 bin 以 mean= 接近 Poisson,m/n較小的值導(dǎo)致更大的方差


查看完整回答
反對(duì) 回復(fù) 2022-01-20
?
慕姐4208626

TA貢獻(xiàn)1852條經(jīng)驗(yàn) 獲得超7個(gè)贊

這是一個(gè)示例解決方案:


import numpy as np


M = 50 # The fixed sum

N = 5 # The amount of numbers


array = np.random.multinomial(M, np.ones(N) / N)[0]

print(array)


查看完整回答
反對(duì) 回復(fù) 2022-01-20
  • 3 回答
  • 0 關(guān)注
  • 207 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)