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 相关文章推荐
wxpython 学习笔记 第一天
Feb 09 Python
Python中使用item()方法遍历字典的例子
Aug 26 Python
Ruby使用eventmachine为HTTP服务器添加文件下载功能
Apr 20 Python
Python字符串格式化的方法(两种)
Sep 19 Python
pandas的object对象转时间对象的方法
Apr 11 Python
pandas数据分组和聚合操作方法
Apr 11 Python
Python3 批量扫描端口的例子
Jul 25 Python
在django中实现页面倒数几秒后自动跳转的例子
Aug 16 Python
python读取yaml文件后修改写入本地实例
Apr 27 Python
Django Model中字段(field)的各种选项说明
May 19 Python
Python selenium使用autoIT上传附件过程详解
May 26 Python
Django全局启用登陆验证login_required的方法
Jun 02 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
PHP伪静态写法附代码
2008/06/20 PHP
php学习笔记 数组遍历实现代码
2011/06/09 PHP
php检测图片木马多进制编程实践
2013/04/11 PHP
10个实用的PHP正则表达式汇总
2014/10/23 PHP
浅析Yii2集成富文本编辑器redactor实例教程
2016/04/25 PHP
通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法
2020/04/02 PHP
Aster vs KG BO3 第一场2.18
2021/03/10 DOTA
动态调用css文件——jquery的应用
2007/02/20 Javascript
基于JQuery的Pager分页器实现代码
2010/07/17 Javascript
验证码按回车不变解决方法
2013/03/29 Javascript
js Date概念详细介绍
2013/11/22 Javascript
用js代码改变单选框选中状态的简单实例
2013/12/18 Javascript
jQuery基于ajax()使用serialize()提交form数据的方法
2015/12/08 Javascript
jquery图片放大镜效果
2017/06/23 jQuery
es6新特性之 class 基本用法解析
2018/05/05 Javascript
JavaScript设计模式之构造函数模式实例教程
2018/07/02 Javascript
浅谈vue引用静态资源需要注意的事项
2018/09/28 Javascript
详解vue后台系统登录态管理
2019/04/02 Javascript
react写一个select组件的实现代码
2019/04/03 Javascript
KnockoutJS数组比较算法实例详解
2019/11/25 Javascript
在Webpack中用url-loader处理图片和字体的问题
2020/04/28 Javascript
深入解析微信小程序开发中遇到的几个小问题
2020/07/11 Javascript
Python使用re模块正则提取字符串中括号内的内容示例
2018/06/01 Python
python读取和保存图片5种方法对比
2018/09/12 Python
python3.7 的新特性详解
2019/07/25 Python
8种常用的Python工具
2020/08/05 Python
python使用scapy模块实现ping扫描的过程详解
2021/01/21 Python
Pure Collection美国官网:来自英国羊绒专家的奢华羊绒
2017/11/19 全球购物
翻译专业应届生求职信
2013/11/23 职场文书
矫正人员思想汇报
2014/01/08 职场文书
餐厅筹备计划书
2014/04/25 职场文书
踏青活动策划方案
2014/08/19 职场文书
政审证明范文
2015/06/19 职场文书
2015重阳节敬老活动总结
2015/07/29 职场文书
领导干部学习三严三实心得体会
2016/01/05 职场文书
虚拟机linux端mysql数据库无法远程访问的解决办法
2021/05/26 MySQL