前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >numpy中random模块使用

numpy中random模块使用

作者头像
听城
发布2018-04-27 14:24:44
1.4K0
发布2018-04-27 14:24:44
举报
文章被收录于专栏:杂七杂八杂七杂八

在python数据分析的学习和应用过程中,经常需要用到numpy的随机函数,下面我们学习一下具体的使用,本文着重说明各个分布随机数的生成。

numpy.random.rand()

  • rand函数根据给定维度生成[0,1)之间的数据,包含0,不包含1
  • 括号参数为生成随机数的维度
代码语言:javascript
复制
a = np.random.rand(4,2)
print(a)
#[[ 0.12531495  0.21084176]
# [ 0.49285425  0.71383499]
# [ 0.34699335  0.04372341]
# [ 0.15578197  0.43788198]]

numpy.random.randint()

  • 返回随机整数,范围区间为[low,high),包含low,不包含high
  • 参数:low为最小值,high为最大值,size为数组维度大小,dtype为数据类型,默认的数据类型是np.int
  • high没有填写时,默认生成随机数的范围是[0,low)
代码语言:javascript
复制
np.random.randint(1,5) # 返回1个[1,5)时间的随机整数
np.random.randint(-5,5,size=(2,2))

numpy.random.random(size=None)

代码语言:javascript
复制
np.random.random(size=(2,2))

numpy.random.randn()

  • randn函数返回一个或一组样本,具有标准正态分布
  • 标准正态分布又称为u分布,是以0为均值、以1为标准差的正态分布,记为N(0,1)
代码语言:javascript
复制
np.random.randn(2,4)
#[[0.27795239, -2.57882503,  0.3817649 ,  1.42367345],
#       [-1.16724625, -0.22408299,  0.63006614, -0.41714538]]

np.random.normal(loc=0.0, scale=1.0, size=None)正态分布

  • loc:float概率分布的均值,对应着整个分布的中心center
  • scale:float概率分布的标准差,对应于分布的宽度,scale越大越矮胖,scale越小,越瘦高
  • size:int or tuple of ints输出的shape,默认为None,只输出一个值
  • np.random.randn(size)所谓标准正太分布(μ=0, σ=1),对应于np.random.normal(loc=0, scale=1, size)
代码语言:javascript
复制
mu, sigma = 0, 0.1 # mean and standard deviation
s = np.random.normal(mu, sigma, 1000)

numpy.random.exponential(scale=1.0, size=None)

  • 这里的scale是β,而β=1/λ

numpy.random.poisson(lam=1.0, size=None)

代码语言:javascript
复制
import numpy as np
s = np.random.poisson(5, 10000)
s = np.random.poisson(lam=(100., 500.), size=(100, 2))
#分别得到λ=100,500的数组,100为第一列,500为第二列

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

  • 生成[a, b)的均匀分布 s = np.random.uniform(-1,0,1000)
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.01.14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • numpy.random.rand()
  • numpy.random.randint()
  • numpy.random.random(size=None)
  • numpy.random.randn()
  • np.random.normal(loc=0.0, scale=1.0, size=None)正态分布
  • numpy.random.exponential(scale=1.0, size=None)
  • numpy.random.poisson(lam=1.0, size=None)
  • numpy.random.uniform(low=0.0, high=1.0, size=None)
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档