当您在大多数语言中使用 (min,max) 函数时,分布是什么样的?
如果我想在 20% 的情况下生成一个数字范围,在 80% 的情况下生成另一个数字范围,我该如何生成后续的随机数系列?
ex)我应该得到随机频率,但“1”的频率必须比“0”的频率高约20%
解决方案
对于大多数语言,生成的随机数可以取决于该语言的算法,或者根据时间、处理器、种子数量等多种因素随机生成。
分布不正常。 事实上,如果函数返回 5 个整数,则很有可能所有 5 个整数都在下面。 这也称为均匀分布。
因此,如果您想在 20% 的情况下生成一个数字(例如 7 ),而在 80% 的情况下生成另一个数字(例如 13 ),您可以创建一个如下数组:
var arr = [7,13,13]; var picked = arr[Math.floor(Math.random()*arr.length)] ; // since Math.random() returns a float from 0.0 to 1.0
所以7有20%的机会出现,13有80%的机会出现。
小编说
以上就是编程之家为您收集的php-从偏态正态分布中生成随机数的全部内容。
如果您觉得 Home网站的内容还不错,欢迎将 Home推荐给您的朋友。