06 您所在的位置:网站首页 numpy随机数组最大值为1 06

06

2024-07-15 21:45| 来源: 网络整理| 查看: 265

06_Numpy各种随机数组的生成方法

numpy.random模块中,有很多可以生成随机数的函数。

在此,对以下的内容进行说明:

生成均匀分布的随机数。 numpy.random.rand(): 0.0到1.0numpy.random.random_sample(): 0.0到1.0numpy.random.randint():任意值范围的整数 生成正态分布的随机数。 numpy.random.randn(): 平均为0,标准差为1numpy.random.normal(): 任意值的平均和标准差 生成二项式的随机数。 numpy.random.binomial() 生成Beta分布的随机数。 numpy.random.beta() 生成Gamma分布的随机数。 numpy.random.gamma() 生成卡方分布的随机数。 numpy.random.chisquare()

以上内容,使用代码进行说明。

生成均匀分布的随机数。 numpy.random.rand(): 均匀分布 0.0到1.0

numpy.random.rand()返回一组0.0到1.0之间的随机数。

import numpy as np rand = np.random.rand() # 1个随机数 print(rand) # 0.5399711080561779 arr = np.random.rand(3) # 长度为3的随机数数组 print(arr) # [ 0.22393312 0.56723404 0.41167989] arr = np.random.rand(4, 4) # 4 x 4的随机数数组 print(arr) # [[ 0.98109413 0.43272792 0.78808567 0.14697466] # [ 0.14529422 0.66417579 0.62020433 0.39887021] # [ 0.78762131 0.3616854 0.76995665 0.25530529] # [ 0.59426681 0.64130992 0.41451061 0.2356074 ]] arr = np.random.rand(3, 2, 2) # 3 x 2 x 2的随机数数组 print(arr) # [[[ 0.26072665 0.63424568] # [ 0.43025675 0.88787556]] # # [[ 0.58189813 0.57733422] # [ 0.4312518 0.12558879]] # # [[ 0.58588003 0.58290714] # [ 0.58133023 0.05894161]]] numpy.random.random_sample(): 均匀分布 0.0到1.0

numpy.random.random_sample()和np.random.rand()相同,返回一组0.0到1.0之间的随机数。不同的是指定参数的类型。 numpy.random.random_sample()的参数类型为tuple(元组)。

rand = np.random.random_sample() # 1个随机数 print(rand) # 0.7812294650415362 arr = np.random.random_sample(3) # 长度为3的随机数数组 print(arr) # [ 0.31315625 0.75406842 0.51955327] arr = np.random.random_sample((4, 4)) # 4 x 4的随机数数组 print(arr) # [[ 0.17710988 0.63316992 0.00101942 0.94233375] # [ 0.9439738 0.58700846 0.97807038 0.56899597] # [ 0.62050185 0.23601975 0.57513176 0.56947325] # [ 0.64393715 0.92796497 0.83784537 0.1544701 ]] arr = np.random.random_sample((3, 2, 2)) # 3 x 2 x 2的随机数数组 print(arr) # [[[ 0.26624554 0.33096779] # [ 0.1814989 0.12867246]] # # [[ 0.1435755 0.45274324] # [ 0.12867198 0.98908694]] # # [[ 0.86989893 0.67003622] # [ 0.17530006 0.03146698]]] print(np.random.random_sample is np.random.random) # True

其他:

np.random.random()np.random.ranf()np.random.sample()

上述函数的函数名虽然不同,但功能完全相同。

numpy.random.randint(): 均匀分布 任意值范围的整数

np.random.randint()返回一组任意值范围的整数随机数。 参数的指定顺序为最小值,最大值,尺寸,类型。

arr = np.random.randint(4, 10, (3, 3)) # 4到10的3 x 3的随机整数数组 print(arr) # [[9 5 6] # [4 8 9] # [9 8 5]] numpy.random.randn(): 正态分布 平均为0,标准差为1

np.random.randn()返回一组平均为0,标准差为1,服从正态分布的随机数。

arr = np.random.randn(3, 3) print(arr) # [[-0.25630308 0.86118703 0.7163906 ] # [-0.63096426 -2.09983061 1.28259567] # [ 1.45971205 0.2939326 0.64207751]] numpy.random.normal(): 正态分布 任意值的平均和标准差

numpy.random.normal()返回一组平均为loc,标准差为scale,服从正态分布的随机数。

numpy.random.normal(loc=0.0, scale=1.0, size=None)

参数size的类型为tuple(元组)

arr = np.random.normal(-2, 0.5, (3, 3)) print(arr) # [[-2.40461812 -2.76365861 -1.70312821] # [-2.29453302 -1.53210319 -1.49669024] # [-1.90580765 -1.45375908 -2.44137036]] numpy.random.binomial(): 二项分布

numpy.random.binomial()返回一组服从参数n,p的二项式随机数。

参数size的类型为tuple(元组)

arr = np.random.binomial(10, 0.5, 10) print(arr) # [7 4 7 5 7 8 5 5 3 4] numpy.random.beta(): Beta分布

numpy.random.beta()返回一组服从参数a,b的Beta分布的随机数。

参数size的类型为tuple(元组)

arr = np.random.beta(2, 2, 10) print(arr) # [ 0.36516508 0.86746749 0.54430968 0.31152791 0.57359928 0.48281988 # 0.70518635 0.57312808 0.09019818 0.87831173] numpy.random.gamma(): Gamma分布

numpy.random.gamma()返回一组服从参数shape,比例scale的Gamma分布的随机数。

参数size的类型为tuple(元组)

arr = np.random.gamma(5, 1, 10) print(arr) # [ 3.86630062 1.69144819 3.07071675 3.14181626 3.61405871 8.37772201 # 5.47063142 4.80523142 3.68531649 4.43143731] numpy.random.chisquare(): 卡方分布

numpy.random.chisquare()返回一组服从自由度df的卡方分布的随机数。

参数size的类型为tuple(元组)

arr = np.random.chisquare(3, 10) print(arr) # [ 0.49617849 2.39966829 2.84359974 3.5340327 0.71761612 2.04619564 # 0.35930769 4.00448281 1.2907048 2.99259386]


【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有