专栏首页杂七杂八numpy中random模块使用

numpy中random模块使用

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

numpy.random.rand()

  • rand函数根据给定维度生成[0,1)之间的数据,包含0,不包含1
  • 括号参数为生成随机数的维度
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)
np.random.randint(1,5) # 返回1个[1,5)时间的随机整数
np.random.randint(-5,5,size=(2,2))

numpy.random.random(size=None)

np.random.random(size=(2,2))

numpy.random.randn()

  • randn函数返回一个或一组样本,具有标准正态分布
  • 标准正态分布又称为u分布,是以0为均值、以1为标准差的正态分布,记为N(0,1)
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)
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)

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)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 神经网络训练细节part1(下)

    学习率的选择通过先用少部分数据来进行测试,选择一个较好的学习速率。选择的方式可以为在某个范围内随机取值,观察样本的准确率

    听城
  • numpy中的乘法(*,dot)

    numpy中数据表示有数组和矩阵两种数据类型,他们的乘法计算也是多种形式,下面我们主要来说一下numpy中的乘法计算 numpy.ndarray 运算符 ...

    听城
  • 梯度下降

    梯度下降(Gradient Descent)是在求解机器学习算法的模型参数(无约束优化问题)时,最常采用的方法之一 代价函数 提到梯度下降就不得不说一下代价函...

    听城
  • Numpy 基础

    numpy.random.random() 生成随机浮点数,数值大小 0.0 ~ 1.0 之间

    用户2434869
  • 记录一个我所遇到的 java.lang.NoClassDefFoundError 异常

    问题出现的原因: 虽然在IDE中的目录结构下有相关的.class文件,但是由于由于在根类加载器的类加载目录下放置了部分.class文件,但不是全部.class...

    Fisherman渔夫
  • 【基础篇】Python+Go——带大家一起另寻途径提高计算性能

    Hello各位小伙伴你们好,我们都知道Python是一个生产力很高的语言,小编本人也非常喜欢Python,经常使用Python帮助小编以最高的效率完成最...

    Python进阶者
  • 嘿,这是本应属于你的“红包”!

    腾讯云安全
  • 《麻省理工科技评论》2017年十大科技突破

    邱翔Alex
  • 为什么每次登录系统都有烦人的验证码?

    每次登录系统的时候总是要输入烦人的验证码,那么我们今天就思考这个问题,为什么要有验证码这个功能?很多伙伴应该都知道:

    不安分的猿人
  • mint-ui loadmore 采坑指南

    loadmore的部分主要是mint-ui用来解决上拉以及下拉的部分,用来做加载更多数据或者刷新的部分。

    RobinsonZhang

扫码关注云+社区

领取腾讯云代金券