zoukankan      html  css  js  c++  java
  • np.random.rand()函数与randn()

    numpy.random.randn()与rand()的区别:

    • numpy.random.randn(d0, d1, …, dn)是从标准正态分布中返回一个或多个样本值。 
    • numpy.random.rand(d0, d1, …, dn)的随机样本位于[0, 1)中:本函数可以返回一个或一组服从“0~1”均匀分布的随机样本值。

    1.  np.random.rand()函数

      注:np.random.rand使用方法与np.random.randn()函数相同,见下面的randn()函数。

    均匀分布:

    也叫矩形分布,它是对称概率分布,在相同长度间隔的分布概率是等可能的。

    均匀分布由两个参数a和b定义,它们是数轴上的最小值和最大值,通常缩写为U(a,b)。

    均匀分布的概率密度函数为:

    •  

    2.  np.random.randn() :返回数,返回1行n列的矩阵,返回d0*d1,d2*d3

      np.random.randn(d0,d1,d2……dn)
    • 1.当函数括号内没有参数时,则返回一个浮点数;

    • 2.当函数括号内有一个参数时,则返回秩为1的数组,不能表示向量和矩阵;

     np.random.rand(n):生成n个数字:服从均匀分布

    import numpy as np
    n=100
    numbers=np.random.rand(n)
    print(numbers)
    print(numbers[0])

    生成结果:

    [0.38168677 0.59407726 0.35176551 0.06454376 0.83568464 0.69637982
     0.24368057 0.19585352 0.65597577 0.34974667 0.12226723 0.09980699
     0.28026482 0.36982289 0.98451365 0.67577312 0.3396587  0.83913777
     0.19975695 0.48266711 0.06253195 0.03442195 0.26711649 0.59684131
     0.32449135 0.201035   0.10583951 0.22929671 0.36369577 0.79181915
     0.37036303 0.23298382 0.38424825 0.60184844 0.20676976 0.16115611
     0.68320131 0.39269848 0.14410751 0.24837102 0.17024295 0.83205654
     0.13939348 0.20668946 0.30256059 0.00508079 0.25822745 0.98956192
     0.28415732 0.46733642 0.98349761 0.60101909 0.89957235 0.49399372
     0.66874855 0.71217971 0.4240244  0.15444761 0.56674883 0.33054616
     0.3354706  0.02875843 0.24177997 0.21024322 0.71773817 0.17882851
     0.44207474 0.11530786 0.35135403 0.760504   0.64180164 0.0205157
     0.46417601 0.99069724 0.49334422 0.49878908 0.14926022 0.55568238
     0.0986128  0.36320792 0.63561554 0.52765909 0.58487077 0.05659434
     0.13670034 0.81223304 0.73038064 0.54155066 0.0498481  0.5281924
     0.79728807 0.5819477  0.57417879 0.06890877 0.36662187 0.88355421
     0.89484216 0.01090776 0.58829253 0.47415749]
    0.3816867739686278
    
    Process finished with exit code 0
    • 3.当函数括号内有两个及以上参数时,则返回对应维度的数组,能表示向量或矩阵。np.random.rand(行,列)

    • 4.np.random.standard_normal()函数与np.random.randn()类似,但是np.random.standard_normal()的输入参数为元组(tuple). 

    建议试试,结果有利于理解多维数组:

    np.random.standard_normal((5))
    np.random.standard_normal((5,2))
    np.random.standard_normal((5,2,3))
    np.random.standard_normal((5,2,3,1))
    • np.random.randn()的输入通常为整数,但是如果为浮点数,则会自动直接截断转换为整数。

  • 相关阅读:
    你可能不知道的css-doodle
    js变量提升与函数提升的详细过程
    绑定Github上的个人博客到Godaddy域名
    基于Github&Hexo的个人博客搭建过程
    github提交代码contributions不显示小绿块
    从零开始学 Web 系列教程
    从零开始学 Web 之 Vue.js(六)Vue的组件
    从零开始学 Web 之 Vue.js(五)Vue的动画
    从零开始学 Web 之 Vue.js(四)Vue的Ajax请求和跨域
    CSS(二)- 选择器
  • 原文地址:https://www.cnblogs.com/BBS2013/p/12839042.html
Copyright © 2011-2022 走看看