zoukankan      html  css  js  c++  java
  • 随机数的产生

    randn功能:产生标准正态分布随机数矩阵的函数。
    用法:
    Y = randn(n)
    返回一个n*n的随机项的矩阵。如果n不是个数量,将返回错误信息。
    Y = randn(m,n) 或 Y = randn([m n])
    返回一个m*n的随机项矩阵。
    Y = randn(m,n,p,...) 或 Y = randn([m n p...])
    产生随机数组
    Y = randn(size(A)) %A为数组
    返回一个和A有同样维数大小的随机数组。
    randn
    返回一个每次都变化的数。
    产生一个随机分布的指定均值方差的矩阵:将randn产生的结果乘以标准差,然后加上期望均值即可。例如,产生均值为0.6,方差为0.1的一个5*5的随机数方式如下:
    x = .6 + sqrt(0.1) * randn(5)
    x =
    0.8713 0.4735 0.8114 0.0927 0.7672
    0.9966 0.8182 0.9766 0.6814 0.6694
    0.0960 0.8579 0.2197 0.2659 0.3085
    0.1443 0.8251 0.5937 1.0475 -0.0864

    0.7806 1.0080 0.5504 0.3454 0.5813

    设置randn到其默认的初始状态格式:randn('state', 0);每次初始化randn到不同的状态的格式randn('state', sum(100*clock))。
    如何用randn产生两个相同的矩阵:
    s = randn('state');%保存当前状态,
    u1 = randn(100);%产生100个值,
    randn('state',s);%复位状态,
    u2 = randn(100); %并重复序列。格式调用如下:
    s = randn('state');
    u1 = randn(3)
    randn('state',s);
    u2 = randn(3)
    运行结果如下:
    u1 =1.6039 0.8957 -0.1072
    -0.3728 -1.3913 -0.8276
    0.7578 0.3116 0.0592
    u2 =1.6039 0.8957 -0.1072
    -0.3728 -1.3913 -0.8276
    0.7578 0.3116 0.0592
    从结果可以看出,这两个矩阵的各个元素均相同,所以这两个就是等价矩阵。
    其他类似函数:rand, randperm, sprand, sprandn
    Y = randn(n)
    Y = randn(m,n)
    Y = randn([m n])
    Y = randn(m,n,p,...)
    Y = randn([m n p...])
    Y = randn(size(A))
    randn
    s = randn('state')

    A=rand()产生(0,1)之间的随机数
        r = -5 + (5+5)*rand(10,1)产生10行1列个(-5,5)之间的实数
    
    通常产生(a,b)之间的数用r = a + (b-a).*rand(N,1).


    randi()函数生成均匀分布的伪随机整数,范围为imin--imax,如果没指定imin,则默认为1。

     

    r = randi(imax,n):生成n*n的矩阵

    r = randi(imax,m,n):生成m*n的矩阵

    r = randi(imax,[m,n]):同上

    r = randi(imax,m,n,p,...):生成m*n*p*...的矩阵

    r = randi(imax,[m,n,p,...])同上

    r = randi(imax):1*1的矩阵

    r = randi(imax,size(A)):和size(A)同维的矩阵

    r = randi([imin,imax],...)


  • 相关阅读:
    【进阶技术】一篇文章搞掂:Spring Cloud Stream
    es6的foreach循环遍历
    centos下安装redis
    linux下安装nginx
    centos下安装Mysql5.7.20
    ubuntu下安装Mysql
    Maven发布项目丢失Mybatis Mapper包的映射问题
    linux下导入导出oracle的dmp文件
    表达式计算-----------eval()运算符
    Linux下安装mysql
  • 原文地址:https://www.cnblogs.com/xuxinstyle/p/9128904.html
Copyright © 2011-2022 走看看