random模块
np.random为我们提供了许多获取随机数的函数。其实是python内置random模块进行的封装
np.random.rand
生成一个值为[0,1)之间的数组,形状由参数指定,如果没有参数,那么将返回一个随机值。示例代码如下
import numpy as np
np.random.rand() # 随机生成0-1之间的数
np.random.seed
用于指定随机数生成时所用算法开始的整数值,如果使用相同的seed()值,则每次生成的随即数都相同,如果不设置这个值,则系统根据时间来自己选择这个值,此时每次生成的随机数因时间差异而不同。一般没有特殊要求不用设置。以下代码:
np.random.seed(1) # 如果加上seed 每次执行的结果都是一样的
np.random.rand()
np.random.randn
生成均值(μ)为0,标准差(σ)为1的标准正态分布的值。示例代码如下:
#生成一个2行3列的数组,数组中的值都满足标准正太分布
np.random.randn(2,3) # 标准差为1的标准正太分布的值
np.random.randint
生成指定范围内的随机数,并且可以通过size参数指定维度。示例代码如下
np.random.randint(1,10,size=(4,4)) #[low,high],size是数组的形状
np.random.choice
从一个列表或者数组中,随机进行采样。或者是从指定的区间中进行采样,采样个数可以通过参数指定
data = np.arange(5)
data
# 从data中 随机取值构建成 4行4列 的数组
np.random.choice(data,size=(4,4))
np.random.shuffle
把原来数组的元素的位置打乱。
arr = np.arange(10)
np.random.shuffle(arr) # 将arr的顺序打乱
# 注