文章目录

  • 1、np.random.uniform的用法
  • 2、np.random.random_sample的用法
  • 3、np.random.rand的用法
  • 4、np.random.randint的用法
  • 5、np.random.random_integers的用法
  • 6.np.random.randn用法
  • 7.np.random.normal:指定均值、标准差的正态分布
  • 8.np.random.seed()用法

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到1
Out[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作用一样
np.random.random_sample(size=None)

  • 作用:返回[0,1)之间的浮点型随机数,通过size控制返回的形状
np.random.random_sample()0.47108547995356098
type(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)) - 5array([[-3.99149989, -0.52338984],[-2.99091858, -0.79479508],[-1.23204345, -1.75224494]])

3、np.random.rand的用法

np.random.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的用法

np.random.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的用法

np.random.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 但是后者将被前者取代

6.np.random.randn用法


# 生成随机数组(3行4列)
t4 = np.random.randn(3, 4)  # 标准正态分布。平均数为0,标准差为1
print(t4)
'''
[[-1.16437124  0.46641835 -1.46333878 -0.62954658][-1.00251519  0.01611795 -0.84230815 -0.53709323][-0.1879806   0.95789097  0.39767329 -0.62235085]]

7.np.random.normal:指定均值、标准差的正态分布


# 随机生成数组。指定均值和标准差的正态分布
# normal(平均值, 标准差, (size))
t5 = np.random.normal(0, 1, (3, 4))  # 指定均值和标准差的正态分布
print(t5)
'''
[[-0.61227132 -1.51199316  0.73388842  2.8243283 ][-0.12226332 -1.14841297 -0.17976744 -1.48553538][ 0.54848728 -0.54263611  1.6900577   0.35058451]]

8.np.random.seed()用法

import numpy as npnp.random.seed(10)  # 设定随机种子值。 设定之后,每次执行该程序,生成的是相同的随机数。(电脑是伪随机)
t1 = np.random.randint(0,20,(3,4))
print(t1)  # 多次执行,生成相同的随机数。
'''
[[ 9  4 15  0][17 16 17  8][ 9  0 10  8]]

numpy 常用产生随机数方法相关推荐

  1. NumPy常用属性及方法

    NumPy是高性能科学计算和数据分析的基础包.部分功能如下: ndarray, 具有矢量算术运算和复杂广播能力的快速且节省空间的多维数组. 用于对整组数据进行快速运算的标准数学函数(无需编写循环). ...

  2. PyTorch 笔记(02)— 常用创建 Tensor 方法(torch.Tensor、ones、zeros、eye、arange、linspace、rand、randn、new)

    1. Tensor 概念分类 PyTorch 中的张量(Tensor)类似 NumPy 中的 ndarrays,之所以称之为 Tensor 的另一个原因是它可以运行在 GPU 中,以加速运算. 1.1 ...

  3. 【Data Mining】机器学习三剑客之Numpy常用用法总结

    点击"小詹学Python",选择"置顶"公众号 重磅干货,第一时间送达 本文转载自AI蜗牛车,禁二次转载 一.前言 玩数据分析.数据挖掘.AI的都知道这个pyt ...

  4. python数据分析 - numpy | ndarray数组 | numpy常用函数

    文章目录 数据分析 numpy概述 numpy历史 numpy的核心:多维数组 numpy基础 ndarray数组 内存中的ndarray对象 ndarray数组对象的特点 ndarray数组对象的创 ...

  5. 数据分析之numpy基础/matplotlib绘图/numpy常用函数/杂项功能

    文章目录 数据分析 numpy概述 numpy`历史` numpy的核心:多维数组 numpy基础 ndarray数组 内存中的ndarray对象 ndarray数组对象的特点 ndarray数组对象 ...

  6. 数据维度爆炸怎么办?详解5大常用的特征选择方法

    ↑↑↑关注后"星标"Datawhale 每日干货 & 每月组队学习,不错过 Datawhale干货 作者:Edwin Jarvis,cnblog博客整理 在许多机器学习相关 ...

  7. 数据维度爆炸怎么办?详解 5 大常用的特征选择方法

    点击上方"小白学视觉",选择加"星标"或"置顶" 重磅干货,第一时间送达 在许多机器学习相关的书里,很难找到关于特征选择的内容,因为特征选择 ...

  8. numpy常用函数之random.normal函数

    numpy常用函数之random.normal函数 4.np.random.normal(loc=0.0, scale=1.0, size=None) 作用:    生成高斯分布的概率密度随机数 lo ...

  9. 结合Scikit-learn介绍几种常用的特征选择方法

    特征选择(排序)对于数据科学家.机器学习从业者来说非常重要.好的特征选择能够提升模型的性能,更能帮助我们理解数据的特点.底层结构,这对进一步改善模型.算法都有着重要作用. 特征选择主要有两个功能: 减 ...

  10. Java SE有几个代码_JavaSE常用类及方法的介绍(附代码)

    本篇文章给大家带来的内容是关于JavaSE常用类及方法的介绍(附代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 1.基本数据类型比较用:== 2.引用数据类型比较用:equal ...

最新文章

  1. ⑨⑧借鉴成功者经验,吸取失败者教训
  2. 5G/4G:空口帧结构之帧、子帧、时隙、符号、RB。
  3. mysql连接查询之间的差异性
  4. 360加固分析(二)
  5. boost::safe_numerics模块相关的测试程序
  6. uni-app官方教程学习手记
  7. matlab字符串数组里里固定格式的内容,字符串数组和字符数组中的文本
  8. java赋值兼容原则,多态问题抛出(赋值兼容性原则遇上父类与子类同名函数的时候)...
  9. postgresql9.5.9相关的日志文件介绍
  10. 《神经网络》学习笔记
  11. 找不到aspnet用户权限的解决方法
  12. 【论文】本周论文推荐(迁移学习、阅读理解、对话系统、图神经网络、对抗生成网络等)...
  13. Atitit 教育学体系 教育学主要内容多语言,教学论,心理学,体育 高等教育学 职业技术教育学 教育史
  14. 磁共振线圈分类_磁共振线圈(二)
  15. vs2010开发activex(MFC)控件/ie插件(一)
  16. Python字符串:isspace、istitle、isupper、islower
  17. linux 5.5安装万兆网卡驱动,CentOS 5.5 更新网卡驱动 bnx2 version: 2.0.2
  18. mybatis的基本雏形
  19. 专访李智慧:架构是最高层次的规划和难以改变的决定
  20. Packet Sniffing and Spoofing Lab(报文嗅探欺骗SEED 实验)

热门文章

  1. 逆向知识第七讲,三目运算符在汇编中的表现形式,以及编译器优化方式
  2. Nginx禁止直接通过IP地址访问网站以及限制IP登陆某目录(关闭默认站点或空主机头)...
  3. Servlet中的请求转发
  4. 平均值的最值化 - 二分
  5. 启动Tomcat出现Using CATALINA_BASE
  6. Windows下安装最新的Apache+PHP+MySQL方法--记录方便自己参考
  7. STM32程序中使用printf打印中文字符乱码
  8. react页面内嵌微信二维码 和 自定义样式 以及 微信网页共用unionId问题
  9. 数据结构基础温故-5.图(上):图的基本概念
  10. LinkedList简要分析