程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

暂无分类

标签  

暂无标签

日期归档  

tf好朋友之np.random模块的使用

发布于2019-08-20 11:01     阅读(1130)     评论(0)     点赞(21)     收藏(4)


np.random模块常用的一些方法介绍

名称 作用
numpy.random.rand(d0, d1, …, dn) 生成一个[d0, d1, …, dn]维的numpy数组,数组的元素取自[0, 1)上的均分布,若没有参数输入,则生成一个[0, 1)的数。
numpy.random.randn(d0, d1, …, dn) 生成一个[d0, d1, …, dn]维的numpy数组,具有标准正态分布。
numpy.random.randint(low, high=None, size=None, dtype=‘I’) 生成整数,取值范围为[low, high),若没有输入参数high,则取值区间为[0, low)。
numpy.random.uniform(low=0.0, high=1.0, size=None) 生成符合均分布的浮点数,取值范围为[low, high),默认取值范围为[0, 1.0)。
numpy.random.normal(loc=0.0, scale=1.0, size=None) 按照正态分布生成均值为loc,标准差为scale的,形状为size的浮点数。
numpy.random.random(size=None) 生成[0.0, 1.0)之间的浮点数。
numpy.random.choice(a, size=None, replace=True, p=None) 从a(数组)中选取size(维度)大小的随机数,replace=True表示可重复抽取,p是a中每个数出现的概率。若a是整数,则a代表的数组是arange(a)。

例子

numpy.random.rand(d0, d1, …, dn):

生成一个[d0, d1, …, dn]维的numpy数组,数组的元素取自[0, 1)上的均分布,若没有参数输入,则生成一个[0, 1)的数。

import numpy as np
v1 = np.random.rand()
v2 = np.random.rand(3,4)
print(v1)
print(v2)
  • 1
  • 2
  • 3
  • 4
  • 5

输出结果为:

0.618411110932038
[[0.35134062 0.55609186 0.4173297  0.85541691]
 [0.35144304 0.31204156 0.60196109 0.390464  ]
 [0.19186067 0.94570486 0.8637441  0.07028114]]
  • 1
  • 2
  • 3
  • 4

numpy.random.randn(d0, d1, …, dn):

生成一个[d0, d1, …, dn]维的numpy数组,具有标准正态分布。

import numpy as np
v1 = np.random.randn()
v2 = np.random.randn(3,4)
print(v1)
print(v2)
  • 1
  • 2
  • 3
  • 4
  • 5

输出结果为:

0.47263651836701953
[[-0.23431214  0.97197099  0.52845269 -0.45246824]
 [-1.1266395  -1.60040653 -2.64602615 -0.19457032]
 [-0.520287   -1.0799122   0.08441667  0.34980224]]
  • 1
  • 2
  • 3
  • 4

numpy.random.randint(low, high=None, size=None, dtype=‘I’):

生成整数,取值范围为[low, high),若没有输入参数high,则取值区间为[0, low)。

import numpy as np
v1 = np.random.randint(5)
v2 = np.random.randint(1,high = 5)
v3 = np.random.randint(1,high = 5,size = [3,4])
print(v1)
print(v2)
print(v3)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

输出结果为:

2
3
[[1 1 3 1]
 [2 2 3 2]
 [3 4 2 1]]
  • 1
  • 2
  • 3
  • 4
  • 5

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

生成符合均分布的浮点数,取值范围为[low, high),默认取值范围为[0, 1.0)。

import numpy as np
v1 = np.random.uniform()
v2 = np.random.uniform(low = 0,high = 5)
v3 = np.random.uniform(low = 0,high = 5,size = [3,4])
print(v1)
print(v2)
print(v3)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

输出结果为:

0.6925621763952164
3.0483936610544218
[[1.34959297 4.84117424 0.41277118 4.81392216]
 [2.91266734 0.87922181 3.39729422 3.34340092]
 [0.45158364 3.8129479  0.54246798 2.57192192]]
  • 1
  • 2
  • 3
  • 4
  • 5

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

按照正态分布生成均值为loc,标准差为scale的,形状为size的浮点数。

import numpy as np
v1 = np.random.normal()
v2 = np.random.normal(loc = 0,scale = 5)
v3 = np.random.normal(loc = 0,scale = 5,size = [3,4])
print(v1)
print(v2)
print(v3)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

输出结果为:

0.7559391954091367
-3.359831771004067
[[  3.90821047   6.37757533   6.3813528    0.86219281]
 [ -3.61201084   4.05948053  -3.91172941  11.29050165]
 [ -8.60318633 -10.07090496  -4.86557867   7.98536182]]
  • 1
  • 2
  • 3
  • 4
  • 5

numpy.random.random(size=None)

生成[0.0, 1.0)之间的浮点数。

import numpy as np
v1 = np.random.random()
v2 = np.random.random(size = [3,4])
print(v1)
print(v2)
  • 1
  • 2
  • 3
  • 4
  • 5

输出结果为:

0.5930924941107145
[[0.41002067 0.28097163 0.8908558  0.16951515]
 [0.59730596 0.57475303 0.84174255 0.59633522]
 [0.63508879 0.44138737 0.6223043  0.61540997]]
  • 1
  • 2
  • 3
  • 4

numpy.random.choice(a, size=None, replace=True, p=None)

从a(数组)中选取size(维度)大小的随机数,replace=True表示可重复抽取,p是a中每个数出现的概率。若a是整数,则a代表的数组是arange(a)。

import numpy as np
v1 = np.random.choice(5)
v2 = np.random.choice(5,size = 5)
v3 = np.random.choice([1,2,3,4,5],size = 5)
v4 = np.random.choice([1,2,3,4,5],size = 5,p = [1,0,0,0,0])
v5 = np.random.choice([1,2,3,4,5],size = 5,replace = False)
print("v1:",v1)
print("v2:",v2)
print("v3:",v3)
print("v4:",v4)
print("v5:",v5)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

输出结果为:

v1: 1
v2: [0 0 4 0 4]
v3: [3 2 3 1 1]
v4: [1 1 1 1 1]
v5: [4 2 3 5 1]
  • 1
  • 2
  • 3
  • 4
  • 5


所属网站分类: 技术文章 > 博客

作者:3434erer

链接:https://www.pythonheidong.com/blog/article/49062/648cc2242727abcd9a29/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

21 0
收藏该文
已收藏

评论内容:(最多支持255个字符)