Matlab生成随机数

Matlab生成随机数的几种方法

计算机产生的随机数是由随机数生成器函数生成的伪随机数pseudorandom,一般以一个真随机数(种子)作为初始条件(如系统时间)

1,rand生成均匀分布的伪随机书,(0~1)之间

     主要语法:rand(m,n)生成m行n列的均匀分布的伪随机数
                       rand(m,n,'double')生成指定精度的均匀分布的伪随机数,参数可以是'single'
                       rand(RandStream,m,n)利用指定的RandStream(我理解为随机种子)生成伪随机数


2,randn 生成标准正态分布的伪随机数(均值为0,方差为1)
     主要语法:和上面一样


3,  randi 生成均匀分布的伪随机整数
     主要语法:randi(iMax)在开区间(0,iMax)生成均匀分布的伪随机整数
                       randi(iMax,m,n)在开区间(0,iMax)生成mXn型随机矩阵
                       r = randi([iMin,iMax],m,n)在开区间(iMin,iMax)生成mXn型随机矩阵

4,randsrc
       无参数形式,随机输出-1或1;randsrc(m,n); randsrc(m);

5,exprnd 生成指数分布的随机数

       R=exprnd(MU) 

       生成服从参数为MU的指数分布的随机数。输入MU与输出R的形式相同。

       R=exprnd(MU,m)    

       生成服从参数为MU的指数分布的随机数矩阵,矩阵的形式由m定义。m是一个1×2向量,其中的两个元素分别代表返回值R中行与列的维数。

        R=exprnd(MU,m,n)    

       生成m×n形式的指数分布的随机数矩阵。

6,稳定重启的rng分布     

       如何让每次程序运行生成的随机数都一样,主要借助的是rng函数,格式如下:

       rng('default');
       R = rand(1,5); % 每次程序运行生成恒定的1×5随机数
       此外还有生成同样分布的表达方式:

       s = rng;
       R1 = rand(1,5);
       rng(s);
       R2 = rand(1,5); % R1和R2随机数一样

参考原文1:https://www.cnblogs.com/sddai/p/5406182.html

参考原文2:https://blog.csdn.net/qq278672818/article/details/62038537

参考原文3:https://blog.csdn.net/fx677588/article/details/72811673

  • 0
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值