您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

如何在Python中生成日志均匀分布?

如何在Python中生成日志均匀分布?

http://ecolego.facilia.se/ecolego/show/Log- Uni??form%20Distribution:

在对数均匀分布中,假设对数转换后的随机变量是均匀分布的。

从而

logU(a, b) ~ exp(U(log(a), log(b))

因此,我们可以使用以下命令创建对数均匀分布numpy

def loguniform(low=0, high=1, size=None):
    return np.exp(np.random.uniform(low, high, size))

如果您想选择其他基准,我们可以定义一个函数,如下所示:

def lognuniform(low=0, high=1, size=None, base=np.e):
    return np.power(base, np.random.uniform(low, high, size))

编辑:@joaoFaria的答案也是正确的。

def loguniform(low=0, high=1, size=None):
    return scipy.stats.reciprocal(np.exp(low), np.exp(high)).rvs(size)
python 2022/1/1 18:33:48 有401人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶