numpy.random 模块中文文档学习笔记

本文详细介绍了NumPy中各种生成随机数的方法及其应用。包括整数随机数生成、[0,1)间的均匀分布随机数、标准正态分布随机数、随机选择元素等,并通过实例展示了每种方法的具体用法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 numpy.random.randint()

整数随机,指定上下界,左闭右开

np.random.randint(1, size=10)
>>> array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0])

np.random.randint(2, size=10)
>>> array([1, 0, 0, 0, 1, 1, 0, 0, 1, 0])

np.random.randint(5, size=(2, 4))
>>> array([[4, 0, 2, 1],
       	   [3, 2, 2, 0]])

2 numpy.random.rand()

rand()函数根据给定维度生成 [0,1) 之间的数据,均匀分布

np.random.rand(3,2)
>>> array([[ 0.14022471,  0.96360618],
           [ 0.37601032,  0.25528411],
           [ 0.49313049,  0.94909878]]) 

3 numpy.random.randn()

服从标准正态分布~N(0,1)

np.random.randn()
>>> 2.1923875335537315

2.5 * np.random.randn(2, 4) + 3
>>> array([[-4.49401501,  4.00950034, -1.81814867,  7.29718677],
           [ 0.39924804,  4.68456316,  4.99394529,  4.84057254]])

4 numpy.random.choice()

numpy.random.choice(a, size=None, replace=True, p=None)
抽样,参数replace用来设置是否可以取相同元素:True表示可以取相同数字;False表示不可以取相同数字。默认是True。

np.random.choice(5, 3, p=[0.1, 0, 0.3, 0.6, 0.0])
>>> array([3, 3, 0])

np.random.choice(5)		#从[0, 5)中随机输出一个随机数,相当于np.random.randint(0, 5)
>>> 2

np.random.choice(5, 6, replace=True)#可以看到有相同元素
>>> array([3, 4, 1, 1, 0, 3])
np.random.choice(5, 6, replace=False)#会报错,因为五个数字中取六个,不可能不取到重复的数字
>>> ValueError: Cannot take a larger sample than population when 'replace=False'

aa_milne_arr = ['pooh', 'rabbit', 'piglet', 'Christopher']
np.random.choice(aa_milne_arr, 5, p=[0.5, 0.1, 0.1, 0.3])
>>> array(['pooh', 'pooh', 'pooh', 'Christopher', 'piglet'], dtype='|S11')
#可以看到,‘pooh’被选取的概率明显比其他几个高很多

5 numpy.random.uniform()

numpy.random.uniform(low,high,size)
从一个均匀分布 [low,high) 中随机采样;
low:采样下界,float 类型,默认值为0;
high:采样上界,float 类型,默认值为1;
size:输出样本数目,为 int 或元组(tuple)类型;
例如,size=(m,n,k),则输出m * n * k个样本,缺省时输出1个值。

6 numpy.random.random()

(0, 1) 的浮点数

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值