前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python常用numpy与random随机数的产生

Python常用numpy与random随机数的产生

作者头像
SL_World
发布2021-09-18 15:21:47
1.1K0
发布2021-09-18 15:21:47
举报
文章被收录于专栏:X
在这里插入图片描述
在这里插入图片描述

一、Python内建库random的使用

代码语言:javascript
复制
import random
  • 产生1个n~m范围内的int型随机数: random.randint(n,m)
代码语言:javascript
复制
random.randint(1,5)
在这里插入图片描述
在这里插入图片描述
  • 产生1个n~m之间的float型随机数: random.uniform(n, m)
代码语言:javascript
复制
random.uniform(n, m)
在这里插入图片描述
在这里插入图片描述
  • 产生1个0~1之间的float型随机数: random.random()
代码语言:javascript
复制
random.random()
在这里插入图片描述
在这里插入图片描述
  • 产生1个从n~m间隔为kint型整数: random.randrange(n,m,k)
代码语言:javascript
复制
random.randrange(n,m,k)
在这里插入图片描述
在这里插入图片描述
  • 从序列中随机选取1个元素: random.choice(list)
代码语言:javascript
复制
random.choice([1, 2, 3.4, 4.2, 5.6, 6])
在这里插入图片描述
在这里插入图片描述
  • 列表乱序操作: random.shuffle(list);注:该函数无返回值,直接对原列表进行了修改
代码语言:javascript
复制
a = [1,3,5,6,7]
# 或 a = np.array([1,3,5,6,7])
random.shuffle(a)
在这里插入图片描述
在这里插入图片描述

二、Numpy产生随机数array

代码语言:javascript
复制
import numpy as np

【0~1均匀分布float向量或数组】: 产生n个0-1之间的随机数: np.random.random(n)

代码语言:javascript
复制
np.random.random(n)
在这里插入图片描述
在这里插入图片描述

还有一种功能相同的方式是: np.random.rand(d1,d2,d3,...,dn)

代码语言:javascript
复制
np.random.rand(2,3,5)

如产生一个2×3×5维的0~1之间均匀分布的随机数数组如下

在这里插入图片描述
在这里插入图片描述

randomrand的算法完全相同,仅在于传参方式不同,之所以设定rand可能是由于历史原因和matlab有关,详细参考stackoverflow解答

【n-m均匀分布int向量or数组】:产生n~m之间的个int型随机数数组:np.random.randint(n,m,size=d)

代码语言:javascript
复制
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)

代码语言:javascript
复制
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功能更强大,可以自定义每个元素被抽取概率以及是否有放回抽取

  • size:数组或列表的大小,1维填整数,多维填(d1,d2,....)
  • replace:是否是有放回抽取,True表示有,则可能多次抽取到重复值,False则不会抽取到重复值
  • p:列表或数组每个元素被抽取的概率prob,填写方式p=[p1,p2,…],保证总概率=1即可
代码语言:javascript
复制
numpy.random.choice(a, size=None, replace=True, p=None)
在这里插入图片描述
在这里插入图片描述

【参考文献】: [1] https://blog.csdn.net/zq476668643/article/details/95219453. [2] Stackoverflow解答.

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/09/24 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 一、Python内建库random的使用
  • 二、Numpy产生随机数array
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档