相关疑难解决方法(0)

生成N个随机整数,其总和为R中的M.

我想生成N总和的随机正整数M.我希望在一个相当正态的分布周围选择随机正整数,其均值是M/N,标准差很小(是否可以将其设置为约束?).

最后,您如何概括产生N个随机正数(不仅仅是整数)的答案?

我发现了其他相关问题,但无法确定如何将答案应用于此背景:https: //stats.stackexchange.com/questions/59096/generate-three-random-numbers-that-sum-to-1-在-R

生成R中总和为1的3个随机数

R - 具有预定义总数的整数的随机近似正态分布

random simulation r

16
推荐指数
1
解决办法
6662
查看次数

用固定总和选择n个数字

在某些代码中,我想选择总和为的n随机数.[0,1)1

我这样做是通过单独选择数字[0,1)并通过将每个数字除以总和来标准化它们:

numbers = [random() for i in range(n)]
numbers = [n/sum(numbers) for n in numbers]
Run Code Online (Sandbox Code Playgroud)

我的"问题"是,我得出的分布是相当偏斜的.选择一百万个数字而不是一个数字就可以了1/2.通过一些努力,我已经计算了pdf,这并不好.

这是我为5个变量得到的奇怪的pdf:

在此输入图像描述

您是否有一个好的算法来选择数字,从而产生更均匀或更简单的分布?

random algorithm math sample probability

7
推荐指数
2
解决办法
6408
查看次数

标签 统计

random ×2

algorithm ×1

math ×1

probability ×1

r ×1

sample ×1

simulation ×1