NumPy random.ranf() 函数返回给定形状的随机值。该函数创建给定形状的数组,并用从 [0, 1) 上的连续均匀分布中抽取的随机样本填充该数组。
用于从 unif[a, b) 生成随机值,b>a ,可以使用以下关系:
(b-a) * np.random.ranf() + a
语法
numpy.random.ranf(size=None)
参数
size | 可选。 指定输出形状。如果给定的形状是,例如,(m, n, k),则抽取 m * n * k 个样本。默认值为 None,在这种情况下返回单个值。 |
返回值
返回给定形状的随机值(除非size=None,在这种情况下返回单个浮点数)。
示例:
在下面的示例中,random.ranf() 函数用于生成单个随机值。
import numpy as np
x = np.random.ranf()
#打印随机数
print("x =", x)
上述代码的输出将是:
x = 0.22076149806948886
示例:
在下面的示例中,该函数用于生成指定形状的随机值。
import numpy as np
#创建给定大小的数组
#填充随机数
x = np.random.ranf((5, 3))
#打印 x
print("x =\n", x)
上述代码的输出将是:
[[0.83427982 0.14928282 0.63731192]
[0.65008078 0.18633094 0.18742767]
[0.61075212 0.01129346 0.11458491]
[0.99085745 0.28475412 0.19810717]
[0.51604249 0.42201909 0.09791535]]
示例:
通过使用(b-a) * np.random.ranf() + a关系,我们可以定义均匀分布来从中抽取样本。
import numpy as np
#创建一个给定大小的数组,填充
#从 [10, 20) 中抽取的随机数
x = (20-10) * np.random.ranf((5, 3)) + 10
#打印 x
print(x)
上述代码的输出将是:
[[14.5350012 11.50377783 13.98438303]
[14.23121651 18.92345323 13.35319144]
[18.98417555 18.79124236 18.35668005]
[12.79211314 11.84763782 16.63781161]
[11.86143982 19.85435164 13.33015107]]