📅  最后修改于: 2023-12-03 15:04:35.099000             🧑  作者: Mango
NumPy是一个流行的Python库,它提供了支持数组,矩阵和向量计算的高效工具。NumPy库中的random子库提供了随机数生成器。其中的rand和normal方法都是用于生成随机数的。但它们在生成随机数的方式上是有区别的。
rand方法用于生成指定形状的随机数数组,数组中的每个元素的值在[0,1)之间。使用rand方法可以生成0到1之间的均匀分布的随机数。下面是一个使用rand方法生成随机数的示例。
import numpy as np
random_array = np.random.rand(3, 4)
print(random_array)
输出:
[[0.92034807 0.43011309 0.9 0.32111081]
[0.05652366 0.9458713 0.99609603 0.69849188]
[0.81979718 0.35488855 0.16369706 0.50903987]]
在上面的示例中,np.random.rand(3, 4)会生成一个3行,4列的数组。该数组中的每个元素都是在[0,1)之间的随机数。
normal方法用于生成指定形状的随机数数组,数组中的每个元素的值符合正态分布。正态分布也称为高斯分布,是自然界中常见的一种分布类型。下面是一个使用normal方法生成随机数的示例。
import numpy as np
random_array = np.random.normal(0, 1, 3)
print(random_array)
输出:
[ 1.044076 -0.05052366 -3.96134725]
在上面的示例中,np.random.normal(0, 1, 3)会生成一个形状为(3,)的数组。该数组中的每个元素都是服从均值为0,标准差为1的正态分布的随机数。
rand方法和normal方法都有一些参数,这些参数会影响生成的随机数的形状和分布特征。