「numpy」ndarray random 生成随机数组

Numpy ndarray random 生成随机数组


更多内容请关注本人【numpy】专栏


【目录】

  • .astype() 指定生成的数据类型
  • 均匀分布族
  • 正态分布族
  • 附录:正态分布
一、 均匀分布族
1.1 np.random.rand(d0, d1, … , dn)
  • 返回 [0.0,1.0) 内的一组均匀分布的数。
  • d0, d1, …, dn表示的是返回的数组形状
  • 默认返回一个值
np.random.rand(2, 3)	# 返回 2*3 的数组

# 返回结果
[[0.71158201 0.5472807  0.03216727]
 [0.73285615 0.33696739 0.38046974]]

(np.random.rand(2, 3) * 10).astype(int)

# 返回结果
[[2 7 5]
 [7 7 9]]
1.2 np.random.uniform(low=0.0, high=1.0, size=None)
  • 功能:从一个均匀分布 [low,high) 中随机采样,注意定义域是左闭右开,即包含low,不包含high.
  • 参数介绍:
    • low: 采样下界,float类型,默认值为0;
    • high: 采样上界,float类型,默认值为1;
    • size: 输出样本数目,为 int 或 元组(tuple) 类型,例如,size=(m,n,k), 则输出 m*n*k 个样本,缺省时输出1个值。
  • 返回值:ndarray类型,其形状和参数size中描述一致。
x = np.random.uniform(2, 100, 10).astype(int)

# 返回结果
[96 15 22 44 44 40 29 17 53 36]

x = np.random.uniform(2, 100, (2, 3)).astype(int)

# 返回结果2 * 3的矩阵
[[83 45 33]
 [53 59 24]]
1.3 np.random.randint(low, high=None, size=None, dtype=‘l’)
  • 从一个均匀分布中随机采样,生成一个整数或N维整数数组,
  • 取数范围:若high不为None时,取 [low, high) 之间随机整数,否则取值 [0, low) 之间随机整数。
np.random.randint(2, 10, (2, 3))

# 返回结果
[[4 9 6]
 [3 4 5]]

二、正态分布族
2.1 np.random.randn(d0, d1, …, dn)
  • 功能:从标准正态分布中返回一个或多个样本值
  • d0, d1, …, dn表示的是返回的数组形状
  • 默认返回一个值
np.random.randn(3, 4)

# 返回结果
[[ 0.14441314 -0.34550722 -0.52453755 -0.82717355]
 [-1.03770161 -0.08493841 -0.46503424  0.13998059]
 [ 1.01588714 -1.0568847  -1.06361677  0.55616858]]
2.2 np.random.normal(loc=0.0, scale=1.0, size=None)
  • loc:float。此概率分布的均值 μ(对应着整个分布的中心centre)
  • scale:float。此概率分布的标准差 σ 2 σ^{2} σ2(对应于分布的宽度,scale越大越矮胖,scale越小,越瘦高)
  • size:int or tuple of ints。输出的shape,默认为None,只输出一个值
np.random.normal(2.5, 1, (2, 3))

# 返回结果
[[3.45118935 1.62603303 2.9732034 ]
 [4.71411834 2.54191783 1.20813369]]
2.3 np.random.standard_normal(size=None)
  • 返回指定形状的标准正态分布的数组。
np.random.standard_normal(2)

# 返回结果
[-0.34581976  0.54047825]
附录: 正态分布

第一参数μ是服从正态分布的随机变量的均值,第二个参数σ是此随机变量的标准差, 记作 X ~ N(μ, σ 2 σ^2 σ2)

  • 生活、生产与科学实验中很多随机变量的概率分布都可以近似地用正态分布来描述。
  • μ决定了其位置,其标准差 σ 2 σ^2 σ2 决定了分布的幅度。 σ 2 σ^2 σ2 越大越矮胖, σ 2 σ^2 σ2 越小,越瘦高
  • 标准差和方差:数据的离散程度的度量

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值