numpy中生成随机数的几种常用函数(小结)


Posted in Python onAugust 18, 2020

1、使用numpy生成随机数的几种方式

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)

① 操作如下

numpy中生成随机数的几种常用函数(小结)

numpy中生成随机数的几种常用函数(小结)

② 区别如下

numpy中生成随机数的几种常用函数(小结)

2)生成指定数值范围内的随机整数:np.random.randint()

numpy中生成随机数的几种常用函数(小结)

① 操作如下

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)

② 结果如下

numpy中生成随机数的几种常用函数(小结)

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)

① 结果如下

numpy中生成随机数的几种常用函数(小结)

② 区别如下

numpy中生成随机数的几种常用函数(小结)

4)均匀分布随机函数:np.random.uniform()

用法:生成指定范围内的服从均匀分布的随机数;

array11 = np.random.uniform(1,10,5)
display(array11)
# ---------------------------------
array12 = np.random.uniform(1,10,(2,3))
display(array12)

① 结果如下

numpy中生成随机数的几种常用函数(小结)

5)np.random.seed():按照种子来生成随机数,种子一样,则生成的随机数结果必一致

numpy中生成随机数的几种常用函数(小结)

① 操作如下

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)

② 结果如下

numpy中生成随机数的几种常用函数(小结)

6)np.random.shuffle():打乱数组元素顺序(原地操作数组)

c = np.arange(10)
display(c)
np.random.shuffle(c)
display(c)

① 结果如下

numpy中生成随机数的几种常用函数(小结)

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。

② 结果如下

numpy中生成随机数的几种常用函数(小结)

③ 随即进行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)

④ 结果如下

numpy中生成随机数的几种常用函数(小结)

⑤ 模拟进行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)

⑥ 结果如下

numpy中生成随机数的几种常用函数(小结)

到此这篇关于numpy中生成随机数的几种常用函数(小结)的文章就介绍到这了,更多相关numpy 生成随机数内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python 元类使用说明
Dec 18 Python
python 基础学习第二弹 类属性和实例属性
Aug 27 Python
Python对list列表结构中的值进行去重的方法总结
May 07 Python
python字典快速保存于读取的方法
Mar 23 Python
Python 判断图像是否读取成功的方法
Jan 26 Python
python实现批量注册网站用户的示例
Feb 22 Python
pandas修改DataFrame列名的实现方法
Feb 22 Python
Pandas时间序列:重采样及频率转换方式
Dec 26 Python
python新式类和经典类的区别实例分析
Mar 23 Python
Python run()函数和start()函数的比较和差别介绍
May 03 Python
python 如何实现遗传算法
Sep 22 Python
Pandas数据类型之category的用法
Jun 28 Python
在 Python 中使用 MQTT的方法
Aug 18 #Python
安装pyecharts1.8.0版本后导入pyecharts模块绘图时报错: “所有图表类型将在 v1.9.0 版本开始强制使用 ChartItem 进行数据项配置 ”的解决方法
Aug 18 #Python
Python 处理日期时间的Arrow库使用
Aug 18 #Python
python七种方法判断字符串是否包含子串
Aug 18 #Python
Python使用socket模块实现简单tcp通信
Aug 18 #Python
python 浮点数四舍五入需要注意的地方
Aug 18 #Python
Python filter过滤器原理及实例应用
Aug 18 #Python
You might like
我的论坛源代码(二)
2006/10/09 PHP
PHP实现MVC开发得最简单的方法――模型
2007/04/10 PHP
使用NetBeans + Xdebug调试PHP程序的方法
2011/04/12 PHP
php中filter_input函数用法分析
2014/11/15 PHP
php中数字、字符与对象判断函数用法实例
2014/11/26 PHP
PHP与Perl之间知识点区别整理
2019/03/19 PHP
PHP如何开启Opcache功能提升程序处理效率
2020/04/27 PHP
js保存当前路径(cookies记录)
2010/12/14 Javascript
Javascript继承机制的设计思想分享
2011/08/28 Javascript
js substr支持中文截取函数代码(中文是双字节)
2013/04/17 Javascript
js螺旋动画效果的具体实例
2013/11/15 Javascript
Extjs中RowExpander控件的默认展开问题示例探讨
2014/01/24 Javascript
JS实现DIV容器赋值的方法
2015/12/14 Javascript
jQuery实现模仿微博下拉滚动条加载数据效果
2015/12/25 Javascript
AngularJS+Bootstrap实现多文件上传与管理
2016/11/08 Javascript
JS获取年月日时分秒的方法分析
2016/11/28 Javascript
react.js 翻页插件实例代码
2017/01/19 Javascript
JS得到当前时间的方法示例
2017/03/24 Javascript
JS如何设置元素样式的方法示例
2017/08/28 Javascript
vue监听scroll的坑的解决方法
2017/09/07 Javascript
vue-router 权限控制的示例代码
2017/09/21 Javascript
AngularJS中的作用域实例分析
2018/05/16 Javascript
Vue使用Clipboard.JS在h5页面中复制内容实例详解
2019/09/03 Javascript
浅谈vue中get请求解决传输数据是数组格式的问题
2020/08/03 Javascript
[02:54]辉夜杯主赛事第二日败者组 iG.V赛后采访
2015/12/26 DOTA
python定时检查某个进程是否已经关闭的方法
2015/05/20 Python
Python设计模式之状态模式原理与用法详解
2019/01/15 Python
pytorch简介
2020/11/11 Python
python 爬虫如何实现百度翻译
2020/11/16 Python
CSS3弹性盒模型开发笔记(三)
2016/04/26 HTML / CSS
String s = new String(“xyz”);创建了几个String Object?
2015/08/05 面试题
大学生实习证明范本
2014/09/19 职场文书
试用期辞职信范文
2015/03/02 职场文书
贴吧吧主申请感言
2015/08/03 职场文书
2016秋季田径运动会广播稿
2015/12/21 职场文书
导游词之上饶龟峰
2019/10/25 职场文书