侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 中国象棋ai
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

python numpy 常用随机数的产生方法的实现

Python  /  管理员 发布于 7年前   188

numpy 中 的random模块有多个函数用于生成不同类型的随机数,常见的有 uniform、rand、random、randint、random_interges

下面介绍一下各自的用法

1、np.random.uniform的用法

np.random.uniform(low=0.0, high=1.0, size=None)

作用:可以生成[low,high)中的随机数,可以是单个值,也可以是一维数组,也可以是多维数组

参数介绍:

  • low :float型,或者是数组类型的,默认为0
  • high:float型,或者是数组类型的,默认为1
  • size:int型,或元组,默认为空
In[1]: import numpy as npIn[2]: np.random.uniform() # 默认为0到1Out[2]: 0.827455693512018In[3]: np.random.uniform(1,5)Out[3]: 2.93533586182789In[4]: np.random.uniform(1,5,4) #生成一维数组Out[4]: array([ 3.18487512, 1.40233721, 3.17543152, 4.06933042])In[5]: np.random.uniform(1,5,(4,3)) #生成4x3的数组Out[5]: array([[ 2.33083328, 1.592934 , 2.38072  ],    [ 1.07485686, 4.93224857, 1.42584919],    [ 3.2667912 , 4.57868281, 1.53218578],    [ 4.17965117, 3.63912616, 2.83516143]])In[6]: np.random.uniform([1,5],[5,10]) Out[6]: array([ 2.74315143, 9.4701426 ])

2、np.random.random_sample的用法

和np.random.random作用一样

random_sample(size=None) 

- 作用:返回[0,1)之间的浮点型随机数,通过size控制返回的形状

np.random.random_sample()  0.47108547995356098type(np.random.random_sample())  <type 'float'>np.random.random_sample((5,))  array([ 0.30220482, 0.86820401, 0.1654503 , 0.11659149, 0.54323428])  Three-by-two array of random numbers from [-5, 0):5 * np.random.random_sample((3, 2)) - 5  array([[-3.99149989, -0.52338984],      [-2.99091858, -0.79479508],      [-1.23204345, -1.75224494]])

3、np.random.rand的用法

rand(d0, d1, …, dn)

作用:返回[0,1)内的浮点数,输入的d0,d1…dn代表维度信息,没有输入时,则返回[0,1)内的一个随机值

In[15]: np.random.rand()Out[15]: 0.9027797355532956In[16]:np.random.rand(3,3)Out[16]: array([[ 0.47507608, 0.64225621, 0.9926529 ],    [ 0.95028412, 0.18413813, 0.91879723],    [ 0.89995217, 0.42356103, 0.81312942]])In[17]: np.random.rand(3,3,3)Out[17]: array([[[ 0.30295904, 0.76346848, 0.33125168],    [ 0.77845927, 0.75020602, 0.84670385],    [ 0.2329741 , 0.65962263, 0.93239286]],    [[ 0.24575304, 0.9019242 , 0.62390674],    [ 0.43663215, 0.93187574, 0.75302239],    [ 0.62658734, 0.01582182, 0.66478944]],    [[ 0.22152418, 0.51664503, 0.41196781],    [ 0.47723318, 0.19248885, 0.29699868],    [ 0.11664651, 0.66718804, 0.39836448]]])

4、np.random.randint的用法

randint(low, high=None, size=None, dtype='l')

作用:生成整型随机数,可以是单个随机数,也可以是多维的随机数构成的数组

参数介绍

  • low:int 型,随机数的下限
  • high:int 型,默认为空,随机数的上限,当此值为空时,函数生成[0,low)区间内的随机数
  • size:int、或ints、或元组,指明生成的随机数的类型
  • dtype:可选'int' ,'int32',默认为'l'
In[7]: np.random.randint(4)Out[7]: 1In[8]: np.random.randint(4,size=4)Out[8]: array([2, 2, 2, 0])In[9]: np.random.randint(4,10,size=6)Out[9]: array([7, 9, 7, 8, 6, 9])np.random.randint(4,10,size=(2,2),dtype='int32')Out[10]: array([[7, 4],    [6, 9]]) 

5、np.random.random_integers的用法

random_integers(low, high=None, size=None) 

和randint的用法较为相似,区别在于[low,high]

的右边界能够取到,且改函数即将被抛弃,可以使用

np.random.randint(low,high+1)进行代替

总结:随机数可以分为两大类,一类是浮点型的,常以np.random.uniform为代表,np.random.rand,np.random.radnom和np.random.random_simple可以看作是np.random.uniform的特例;另一类是整数型的,以np.random.randint为代表,也有np.random.random_integers 但是后者将被前者取代

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


  • 上一条:
    Python Django 封装分页成通用的模块详解
    下一条:
    python爬虫 批量下载zabbix文档代码实例
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 在python语言中Flask框架的学习及简单功能示例(0个评论)
    • 在Python语言中实现GUI全屏倒计时代码示例(0个评论)
    • Python + zipfile库实现zip文件解压自动化脚本示例(0个评论)
    • python爬虫BeautifulSoup快速抓取网站图片(1个评论)
    • vscode 配置 python3开发环境的方法(0个评论)
    • 近期文章
    • 智能合约Solidity学习CryptoZombie第四课:僵尸作战系统(0个评论)
    • 智能合约Solidity学习CryptoZombie第三课:组建僵尸军队(高级Solidity理论)(0个评论)
    • 智能合约Solidity学习CryptoZombie第二课:让你的僵尸猎食(0个评论)
    • 智能合约Solidity学习CryptoZombie第一课:生成一只你的僵尸(0个评论)
    • 在go中实现一个常用的先进先出的缓存淘汰算法示例代码(0个评论)
    • 在go+gin中使用"github.com/skip2/go-qrcode"实现url转二维码功能(0个评论)
    • 在go语言中使用api.geonames.org接口实现根据国际邮政编码获取地址信息功能(1个评论)
    • 在go语言中使用github.com/signintech/gopdf实现生成pdf分页文件功能(0个评论)
    • gmail发邮件报错:534 5.7.9 Application-specific password required...解决方案(0个评论)
    • 欧盟关于强迫劳动的规定的官方举报渠道及官方举报网站(0个评论)
    • 近期评论
    • 122 在

      学历:一种延缓就业设计,生活需求下的权衡之选中评论 工作几年后,报名考研了,到现在还没认真学习备考,迷茫中。作为一名北漂互联网打工人..
    • 123 在

      Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..
    • 原梓番博客 在

      在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..
    • 博主 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..
    • 1111 在

      佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..
    • 2016-10
    • 2016-11
    • 2018-04
    • 2020-03
    • 2020-04
    • 2020-05
    • 2020-06
    • 2022-01
    • 2023-07
    • 2023-10
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客