gpt4 book ai didi

python - 如何使用numpy在分段间隔上生成随机数

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

我在 python 中使用 numpy 模块来生成随机数。当我需要生成[a,b]等连续区间内的随机数时,我会使用

(b-a)*np.random.rand(1)+a

但是现在我需要在[a,b]和[c,d]区间生成一个均匀的随机数,怎么办?

我想生成一个随机数,它在所有间隔的长度上都是均匀的。我不是等概率选择一个区间,然后在区间内生成一个随机数。如果[a,b]和[c,d]长度相等,这种使用没有问题,但是当区间长度不相等时,这种方法产生的随机数就不是完全均匀的。

最佳答案

你可以做类似的事情

a,b,c,d = 1,2,7,9
N = 10
r = np.random.uniform(a-b,d-c,N)
r += np.where(r<0,b,c)
r
# array([7.30557415, 7.42185479, 1.48986144, 7.95916547, 1.30422703,
# 8.79749665, 8.19329762, 8.72669862, 1.88426196, 8.33789181])

关于python - 如何使用numpy在分段间隔上生成随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56230232/

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