使用numpy.random.rand()生成随机数组
在数据分析和科学计算中,随机数的生成是一个常见且重要的需求。在Python的科学计算库NumPy中,我们可以使用numpy.random模块来生成各种随机数。其中,numpy.random.rand()是一种用于生成指定形状的均匀分布随机数组的函数。
numpy.random.rand()函数的基本用法
numpy.random.rand()函数可以接受一个或多个参数,用于指定生成的随机数组的形状。这些参数可以是整数或元组形式的整数序列。下面我们将分别介绍单参数和多参数形式的numpy.random.rand()函数的用法。
单参数形式
当我们传入一个整数n作为参数时,numpy.random.rand()函数将生成一个包含n个元素的一维数组。每个元素都是0到1之间的均匀分布的随机数。
import numpy as np
# 生成含有5个元素的一维随机数组
random_array = np.random.rand(5)
print(random_array)
运行结果:
array([0.17813322, 0.66621967, 0.10038683, 0.38037533, 0.74605084])
多参数形式
当我们传入多个参数(整数)时,numpy.random.rand()函数会生成一个多维数组,其形状由这些参数确定。例如,当我们传入两个参数m和n时,生成一个m行n列的二维数组。
import numpy as np
# 生成一个3行2列的二维随机数组
random_array = np.random.rand(3, 2)
print(random_array)
运行结果:
array([[0.84742406, 0.03255376],
[0.00294375, 0.75674142],
[0.0001076 , 0.79238378]])
生成指定范围的随机数组
除了生成0到1之间的均匀分布的随机数组,我们还可以使用numpy.random.rand()函数结合简单的数学运算来生成指定范围的随机数组。例如,我们可以通过线性变换将生成的随机数组转换为指定范围内的随机数组。
import numpy as np
# 生成一个含有5个元素的一维随机数组,范围为[1, 10]
random_array = np.random.rand(5) * 9 + 1
print(random_array)
运行结果:
array([2.08535382, 6.00559397, 9.47544022, 8.10530071, 5.00239338])
总结
numpy.random.rand()函数是一个方便且功能强大的随机数生成函数,能够快速生成指定形状和范围的均匀分布随机数组。在数据分析和科学计算领域中,我们经常会用到这个函数来进行随机数的生成和处理。