如何解决生成一批随机数,每个随机数都是零和,并且绝对值的平均值在指定的间隔内均匀分布
在投票结果的民意调查中,我想生成具有特定属性的随机数,以在民意调查的误差范围内对可能性进行抽样。
例如,假设我有投票结果:
- 甲方:34%
- 乙方:25%
- 丙方:14%
- D 方:27%
民意调查结果的误差率为 3.2%。
我想生成 4 个批次(因为在这种情况下有 4 个参与方)随机数。显然因为投票是零和游戏,batch中的数字需要相加为零。
我希望批次的每个元素都小于(绝对值)轮询结果的给定误差范围。
一个例子可能是:(-0.5,+1.2,+0.1,-0.8)
。所有元素总和为零,并且每个元素的绝对值都小于 3.2
,即轮询结果的给定误差范围。
- 元素绝对值的最大值应该均匀分布在
(0,error_of_margin)
上(这是最简单的部分)。 - 绝对值的均值也应该均匀分布在
(0,error_of_margin)
上。
我尝试了两种不同的方法。我将链接一个要点,而不是用代码填充问题。 https://gist.github.com/thomvil/02890ea2873eed6bb155e7dc387c9564
有人对我如何解决这个问题有一些建议吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。