简体   繁体   English

如何使用Numpy生成接近1的随机数

[英]How to generate random numbers close to 1 using Numpy

我想生成一个随机数接近1的numpy数组。有没有一种快速的方法可以让我从1(例如1e-5)设置所需的邻域?

Check the numpy.random module: 检查numpy.random模块:

For example, normally distributed numbers with mean of 1.0 and standard deviation of 0.002: 例如,平均值为1.0,标准差为0.002的正态分布数:

>>> numpy.random.normal(1, 0.002, (5,))
array([1.00246167, 0.99722898, 0.99793482, 1.00100399, 1.00004228])

Using uniform distribution: 使用均匀分布:

>>> numpy.random.uniform(1-1e-5, 1+1e-5, (5,))
array([1.00000668, 1.00000037, 0.99999398, 0.99999736, 1.00000645])

例如,如果您想要在[1 - 1e-5, 1 + 1e-5)范围内的1000个统一随机数:

nums = np.random.uniform(low=1-1e-5, high=1+1e-5, size=1000)

Use a uniform distribution: 使用均匀分布:

>>> window = 1e-5
>>> np.random.uniform(low=1-window, high=1+window, size=10)
array([ 1.00000539,  0.99999055,  1.00000759,  0.99999228,  1.00000737,
        1.00000557,  1.00000522,  1.00000375,  1.00000054,  0.99999047])

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM