我需要使用 beta 分布 Beta(a, b) 来生成一个从 0 到 1 的随机数。
我找到了 Class BetaDist,它具有构造函数 BetaDist(double alpha, double beta),它构造一个 BetaDist 对象,参数为 α = alpha 和 β = beta 以及默认域 (0, 1)。
但是,我找不到可以仅使用 alpha 和 beta 来使用 BetaDist 对象返回随机绘制 x (0, 1) 的方法。
我在stackoverflow上阅读了另一篇文章说:从具有没有跳转的cdf的任意分布生成随机数的一般方法是使用cdf的逆函数:G(y)=F^{-1}(y)。如果 u(1), ..., u(n) 是均匀分布在 (0,1) 上的随机数,则 G(u(1)), ..., G(u(n)) 是随机数来自具有 cdf F(x) 的分布的样本。
BetaDist 类确实有 cdf(double x) 方法,但我仍然不知道下一步该做什么。我没有学过统计学,上面的帖子对我来说还是太复杂了。
非常感谢您。