numpy中几种随机数生成函数的用法

 更新时间:2023年11月06日 09:22:59   作者:别致的SmallSix  
numpy是Python中常用的科学计算库,其中也包含了一些随机数生成函数,本文主要介绍了numpy中几种随机数生成函数的用法,具有一定的参考价值,感兴趣的可以了解一下

一、np.random.rand()

该函数括号内的参数指定的是返回结果的形状,如果不指定,那么生成的是一个浮点型的数;如果指定一个数,那么生成的是一个numpy.ndarray类型的数组;如果指定两个数字,那么生成的是一个二维的numpy.ndarray类型的数组。如果是两个以上的数组,那么返回的维度就和指定的参数的数量个数一样。其返回结果中的每一个元素是服从0~1均匀分布的随机样本值,也就是返回的结果中的每一个元素值在0-1之间。

import numpy as np
mat = np.random.rand()
print(mat)
print(type(mat))
mat = np.random.rand(2)
print(mat)
print(type(mat))
mat = np.random.rand(3, 2)
print(mat)
print(type(mat))

输出:

二、np.random.randn()

该函数和rand()函数比较类似,只不过运用该函数之后返回的结果是服从均值为0,方差为1的标准正态分布,而不是局限在0-1之间,也可以为负值,因为标准正态分布的曲线是关于x轴对阵的。其括号内的参数如果不指定,那么生成的是一个浮点型的数;如果指定一个数,那么生成的是一个numpy.ndarray类型的数组;如果指定两个数字,那么生成的是一个二维的numpy.ndarray类型的数组。和rand()相比,除了元素值不一样,其他的性质是一样的。

import numpy as np
mat = np.random.randn()
print(mat)
print(type(mat))
mat = np.random.randn(2)
print(mat)
print(type(mat))
mat = np.random.randn(3, 2)
print(mat)
print(type(mat))

输出:

三、np.random.randint(low,high,size,dtype)

 该函数中包含了几个参数,其具体含义为:

low:生成的元素值的最小值,即下限,如果没有指定high这个参数,则low为生成的元素值的最大值。

high:生成的元素值的最大值,即上限。

size:指定生成元素值的形状,也就是数组维度的大小。

dtype:指定生成的元素值的类型,如果不指定,默认为整数型

返回结果:返回值是一个大小为size的数组,如果指定了low和high这两个参数,那么生成的元素值的范围为[low,high),不包括high;如果不指定high这个参数,则生成的元素值的范围为[0,low)。如果不指定size这个参数,那么生成的元素值的个数只有一个。

import numpy as np
# 指定一个参数low
mat = np.random.randint(low=1)
print(mat)
print(type(mat))
 
# 指定low和high,生成一个[low,high)的元素值
mat = np.random.randint(low=1, high=5)
print(mat)
print(type(mat))
 
# 指定size大小,生成一个三行三列的二维数组,元素个数为3x3=9个
mat = np.random.randint(low=2, high=10, size=(3, 3))
print(mat)
# 查看默认元素值的类型
print(type(mat[0][0]))
 
mat = np.random.randint(low=2, high=10, size=(3, 3), dtype=np.uint8)
print(mat)
print(type(mat[0][0]))

输出:

注意:low=1代表从0取值,high=10代表最高取值为9。

四、np.random.uniform(low,high,size)

参数说明:

low:生成元素值的下界,float类型,默认值为0。
high:生成元素值的上界,float类型,默认值为1。
size:输出样本的数目,可以指定一个值,也可指指定大于等于两个值。
返回对象:ndarray类型,形状为size中的数值指定,其元素个数为size指定的参数的乘积。

我们前面已经说过了rand()这个函数,它返回的元素值是服从0-1的均匀分布,那如果不想要生成的是0-1范围内的均匀分布,想要其它范围内的均匀分布怎么办呢。

uniform()实现了这个功能,它可以生成服从指定范围内的均匀分布的元素。其返回值的元素类型为浮点型。需注意的是元素值的范围包含low,不包含high

import numpy as np
# 指定一个参数low
mat = np.random.uniform()
print(mat)
print(type(mat))
 
# 指定low和high,生成一个[low,high)的元素值
mat = np.random.uniform(low=5, high=10)
print(mat)
print(type(mat))
 
# 指定size大小,生成一个三行三列的二维数组,元素个数为3x3=9个
mat = np.random.uniform(low=2, high=10, size=(3, 3))
print(mat)
# 查看默认元素值的类型
print(type(mat[0][0]))
 
mat = np.random.uniform(low=2, high=10, size=(3, 3, 2))
print(mat)
print(type(mat[0][0][0]))

输出:

总结

以上就是常用的随机数生成函数,具体用哪一个,可根据自己需求,想要生成什么随机数,那就使用什么样的函数。更多相关numpy 随机数生成函数内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • python3.7中安装paddleocr及paddlepaddle包的多种方法

    python3.7中安装paddleocr及paddlepaddle包的多种方法

    这篇文章主要介绍了python3.7中安装paddleocr及paddlepaddle包,本文通过多种方法给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • Linux下使用python自动修改本机网关代码分享

    Linux下使用python自动修改本机网关代码分享

    这篇文章主要介绍了Linux下使用python自动修改本机网关代码分享,本文直接给出实现代码,需要的朋友可以参考下
    2015-05-05
  • python实现tree命令的使用示例

    python实现tree命令的使用示例

    本文主要介绍了python实现tree命令的使用示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-09-09
  • PyQt5实现简易电子词典

    PyQt5实现简易电子词典

    这篇文章主要为大家详细介绍了PyQt5实现简易电子词典,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-06-06
  • Python基于爬虫实现全网搜索并下载音乐

    Python基于爬虫实现全网搜索并下载音乐

    这篇文章主要介绍了Python基于爬虫实现全网搜索并下载音乐的方法,帮助大家更好的理解和使用python,感兴趣的朋友可以了解下
    2021-02-02
  • Jupyter Notebook 远程访问配置详解

    Jupyter Notebook 远程访问配置详解

    这篇文章主要介绍了Jupyter Notebook 远程访问配置详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-01-01
  • 在python里面运用多继承方法详解

    在python里面运用多继承方法详解

    在本篇文章中小编给各位分享的是关于在python里面运用多继承方法以及知识点总结,有兴趣的朋友们可以学习下。
    2019-07-07
  • python help函数实例用法

    python help函数实例用法

    在本篇文章里小编给大家整理了关于python help函数实例用法及相关实例,需要的朋友们可以学习下。
    2020-12-12
  • python_matplotlib改变横坐标和纵坐标上的刻度(ticks)方式

    python_matplotlib改变横坐标和纵坐标上的刻度(ticks)方式

    这篇文章主要介绍了python_matplotlib改变横坐标和纵坐标上的刻度(ticks)方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-05-05
  • 零基础写python爬虫之爬虫框架Scrapy安装配置

    零基础写python爬虫之爬虫框架Scrapy安装配置

    Scrapy是一个使用Python编写的,轻量级的,简单轻巧,并且使用起来非常的方便。使用Scrapy可以很方便的完成网上数据的采集工作,它为我们完成了大量的工作,而不需要自己费大力气去开发。
    2014-11-11

最新评论