【python】 numpy 中常用随机数函数的使用和记忆(不易混淆)

【python】 numpy 中常用随机数函数的使用和记忆(不易混淆)在使用 numpy 生成随机数过程中 通常有多个函数 容易混乱使用 也不知道哪些要加括号 哪些不需要加括号

大家好,欢迎来到IT知识分享网。

概述

在使用numpy生成随机数过程中,通常有多个函数,容易混乱使用,也不知道哪些要加括号,哪些不需要加括号。本文主要总结使用过程中常用随机数生成的一些函数。包括 np.random.random、np.random.rand、np.random.randint、np.random.normal、np.random.uniform
这些函数的使用。

固定分布随机数(只需指定形状的随机函数)

np.random.random

这个函数用来生成0-1之间的均匀分布,输入是指定形状。例如np.random.random((2,5)) 生成的是2行5列的随机数,需要注意的是输入需要用括号括起来,也就是输入是一个元组。

np.random.rand

np.random.rand 与函数 np.random.random 同样用来生成0-1 的均匀随机数,但是输入本身自带形状,不需要用括号括起来。也就是如果要生成2行5列的数据,直接使用np.random.rand(2,5) 即可

np.random.randn

np.random.randn 与函数 np.random.rand 同样输入直接是形状,但是分布从均匀分布0-1变成高斯分布(u=0,sigma=1),也就是说,随机数是可以出现负值的。

随机范围随机数(需要指定范围和形状的随机函数)

np.random.randint

用来指定在某个指定范围,某个形状的随机数,输入是np.random.randint(low,high,size) ,也就是说输入是需要同时指定范围和形状,例如np.random.randint(1,5,size=(2,5)) 就是生成范围在1-5内,形状(2,5)的均匀分布随机数。

np.random.uniform

np.random.uniformnp.random.randint 同样需要同时指定范围和形状,但是与之不同的是,np.random.uniform 是可以生成小数的,而np.random.randint生成的范围内的整数。

np.random.normal

np.random.normalnp.random.randn 同样都是高斯函数分布,但是需要自行设定均值u和标准差sigma,输入格式为np.random.normal(u,sigma,size) ,u和sigma 其实也是设定范围的意思,也就是说范围和形状需要同时设定。

np.random.poisson

np.random.poissonnp.random.normal 同样是指定特定的分布函数,就是泊松函数和高斯函数的区别,但是泊松函数只需要设定lamda 就可以,(泊松函数lamda=均值)。输入形状np.random.poisson(lamda,size)

代码示例

下面用代码演示一下用上面7个随机函数随机生成形状2行5列的随机数。

固定分布随机数(只需指定形状的随机函数)代码示例

 a = np.random.random((2,5)) print("random_shape:\n",a.shape) print("random:\n",a) print("\n",a) a = np.random.rand(2,5) print("rand_shape:\n",a.shape) print("rand:\n",a) print("\n",a) a = np.random.randn(2,5) print("randn_shape:\n",a.shape) print("randn:\n",a) print("\n",a) 

输出
在这里插入图片描述

随机范围随机数(需要指定范围和形状的随机函数)

a = np.random.randint(0,10,size=(2,5)) print("randint_shape:\n",a.shape) print("randint:\n",a) print("\n",a) a = np.random.normal(0,1,size=(2,5)) print("normal_shape:\n",a.shape) print("normal:\n",a) print("\n",a) a = np.random.uniform(0,1,size=(2,5)) print("uniform_shape:\n",a.shape) print("uniform:\n",a) print("\n",a) a = np.random.poisson(1.0,size=(2,5)) print("poisson_shape:\n",a.shape) print("poisson:\n",a) print("\n",a) 

输出
在这里插入图片描述

怎么记忆

容易记混,怎么记?
1、rand 结尾的 ,除了randint 需要指定最小最大值和形状,其他直接输入形状就行,
2、除了rand作为结尾的,其他结尾,都需要参数和size同时输入。

免责声明:本站所有文章内容,图片,视频等均是来源于用户投稿和互联网及文摘转载整编而成,不代表本站观点,不承担相关法律责任。其著作权各归其原作者或其出版社所有。如发现本站有涉嫌抄袭侵权/违法违规的内容,侵犯到您的权益,请在线联系站长,一经查实,本站将立刻删除。 本文来自网络,若有侵权,请联系删除,如若转载,请注明出处:https://haidsoft.com/149499.html

(0)
上一篇 2025-03-23 19:15
下一篇 2025-03-23 19:20

相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注微信