gpt4 book ai didi

python - 使用 Python 从单尾分布生成范围内的随机数

转载 作者:行者123 更新时间:2023-11-28 21:32:17 24 4
gpt4 key购买 nike

我想从看起来像这样的单尾分布生成 [0, 1) 范围内的随机 float enter image description here

以上是卡方分布。但是,我只能从一个范围内的均匀分布中找到有关绘图的资源。

最佳答案

你可以使用 Beta distribution ,例如

import numpy as np

np.random.seed(2018)
np.random.beta(2, 5, 10)
#array([ 0.18094173, 0.26192478, 0.14055507, 0.07172968, 0.11830031,
# 0.1027738 , 0.20499125, 0.23220654, 0.0251325 , 0.26324832])

这里我们从 Beta(2, 5) 分布中抽取数字

enter image description here

Beta 分布是统计学中用途广泛的基本分布;无需赘述,通过更改参数 alphabeta,您可以使分布左偏、右偏、均匀、对称等。分布定义在间隔 [0, 1] 与您所追求的一致。


更技术性的评论

虽然 Kumaraswamy distribution肯定比 Beta distribution 具有更多良性代数性质我认为后者是更基本的分布;例如,在贝叶斯推理中,在处理二项式(类似)过程时,Beta 分布通常作为共轭先验输入。

其次,Beta 分布的均值和方差可以很简单地用参数alphabeta 表示;例如,平均值由 alpha/(alpha + beta) 给出。

最后,从计算和统计推断的角度来看,将 Beta 分布拟合到数据通常在 Python(或 R)中用几行代码完成,其中大多数 Python 库如 numpyscipy 已经包含了处理 Beta 分布的方法。

关于python - 使用 Python 从单尾分布生成范围内的随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56841477/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com