白云岛资源网 Design By www.pvray.com
1、使用numpy生成随机数的几种方式
1)生成指定形状的0-1之间的随机数:np.random.random()和np.random.rand()
array1 = np.random.random((3)) display(array1) # ----------------------------------- array2 = np.random.random((3,4)) display(array2) # ----------------------------------- array3 = np.random.rand(3) display(array3) # ----------------------------------- array4 = np.random.rand(2,3) display(array4)
① 操作如下
② 区别如下
2)生成指定数值范围内的随机整数:np.random.randint()
① 操作如下
array9 = np.random.randint(low=1, high=10, size=6, dtype=np.int32) display(array9) # --------------------------------------------------------- array10 = np.random.randint(low=1, high=10, size=(2,3), dtype=np.int64) display(array10) # --------------------------------------------------------- array11 = np.random.randint(low=1, high=10, size=(2,3,4), dtype=np.int32) display(array11)
② 结果如下
3)与正态分布有关的几个随机函数:np.random.randn()和np.random.normal()
- np.random.randn 生成服从均值为0,标准差为1的标准正态分布随机数;
- np.random.normal 生成指定均值和标准差的正态分布随机数;
array5 = np.random.randn(3) display(array5) # --------------------------------------------- array6 = np.random.randn(2,3) display(array6) # --------------------------------------------- array7 = np.random.normal(loc=2,scale=0.5,size=6) display(array7) # --------------------------------------------- array8 = np.random.normal(loc=2,scale=0.5,size=6).reshape(2,3) display(array8)
① 结果如下
② 区别如下
4)均匀分布随机函数:np.random.uniform()
用法:生成指定范围内的服从均匀分布的随机数;
array11 = np.random.uniform(1,10,5) display(array11) # --------------------------------- array12 = np.random.uniform(1,10,(2,3)) display(array12)
① 结果如下
5)np.random.seed():按照种子来生成随机数,种子一样,则生成的随机数结果必一致
① 操作如下
np.random.seed(3) a = np.random.rand(3) display(a) np.random.seed(3) b = np.random.rand(3) display(b) # -------------------------- np.random.seed() a = np.random.rand(3) display(a) np.random.seed() b = np.random.rand(3) display(b)
② 结果如下
6)np.random.shuffle():打乱数组元素顺序(原地操作数组)
c = np.arange(10) display(c) np.random.shuffle(c) display(c)
① 结果如下
7)np.random.choice():按照指定概率从指定数组中,生成随机数;
① np.random.choice()函数的用法说明
d = np.random.choice([1,2,3,4], p=[0.1, 0.2, 0.3, 0.4]) display(d)
说明:上述函数第一个参数表示的是数组,第二个参数表示的是概率值。上述函数的含义是当进行n多次重复实验的时候,抽取1的概率为0.1,抽取2的概率为0.2,抽取3的概率为0.3,抽取4的概率为0.4。
② 结果如下
③ 随即进行10000次重复实验,检测每一个数,被抽取到的概率
list1 = [0,0,0,0] for i in range(100000): f = np.random.choice([1,2,3,4], p=[0.1, 0.2, 0.3, 0.4]) list1[f-1] = list1[f-1] + 1 display(list1) result_list = [value/sum(list1) for value in list1] display(result_list)
④ 结果如下
⑤ 模拟进行100000次掷硬币重复实验,检测每一面,被抽取到的概率
list1 = [0,0] for i in range(100000): f = np.random.choice([0,1], p=[0.5,0.5]) list1[f] = list1[f] + 1 display(list1) result_list = [value/sum(list1) for value in list1] display(result_list)
⑥ 结果如下
白云岛资源网 Design By www.pvray.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
白云岛资源网 Design By www.pvray.com
暂无评论...