import random
random.randint(n,m)
random.randint(1,5)
random.uniform(n, m)
random.uniform(n, m)
random.random()
random.random()
random.randrange(n,m,k)
random.randrange(n,m,k)
random.choice(list)
random.choice([1, 2, 3.4, 4.2, 5.6, 6])
random.shuffle(list)
;注:该函数无返回值,直接对原列表进行了修改a = [1,3,5,6,7]
# 或 a = np.array([1,3,5,6,7])
random.shuffle(a)
import numpy as np
【0~1均匀分布float向量或数组】: 产生n个0-1之间的随机数:
np.random.random(n)
np.random.random(n)
还有一种功能相同的方式是: np.random.rand(d1,d2,d3,...,dn)
np.random.rand(2,3,5)
如产生一个2×3×5
维的0~1之间均匀分布的随机数数组如下
random
和rand
的算法完全相同,仅在于传参方式不同,之所以设定rand可能是由于历史原因和matlab有关,详细参考stackoverflow解答。
【n-m均匀分布int向量or数组】:产生n~m之间的个int型随机数数组:
np.random.randint(n,m,size=d)
np.random.randint(n,m,size=d)
np.random.randint(n,m,size=(d1,d2,...))
N(0,1)正态分布float数组】: 产生N维服从 N(0,1)的正态分布的随机数:
np.random.randn(d1,d2,...,dn)
np.random.randn(2,3,4)
如产生一个2×3×4
维的服从 N ( 0 , 1 ) 的 N(0, 1)的 N(0,1)的正态分布的随机数数组如下,我们可以看到只有少量在[-1,1]
之外的随机数:
【随机抽取】:
np.random.choice(list_or_array, size=None, replace=True, p=None)
这个choice的功能相比python内建的choice功能更强大,可以自定义每个元素被抽取概率以及是否有放回抽取
(d1,d2,....)
numpy.random.choice(a, size=None, replace=True, p=None)
【参考文献】: [1] https://blog.csdn.net/zq476668643/article/details/95219453. [2] Stackoverflow解答.
扫码关注腾讯云开发者
领取腾讯云代金券
Copyright © 2013 - 2025 Tencent Cloud. All Rights Reserved. 腾讯云 版权所有
深圳市腾讯计算机系统有限公司 ICP备案/许可证号:粤B2-20090059 深公网安备号 44030502008569
腾讯云计算(北京)有限责任公司 京ICP证150476号 | 京ICP备11018762号 | 京公网安备号11010802020287
Copyright © 2013 - 2025 Tencent Cloud.
All Rights Reserved. 腾讯云 版权所有