matlab中关于随机数的产生有3种库函数,下面我们来看看它们的形式:
  1、rand(…)
  它是生成0~1之间(开环,不包含0和1两个数)均匀分布的伪随机数,也就是无穷次试验其中每个数产生的概率是一样的。
  它的函数格式如下:

 1. R = rand(N)              % 生成N×N的矩阵随机数,其中每个元素位于0~1之间2. R = rand([M,N,P,...])    % 生成M×N×P×...的矩阵随机数3. R = rand(M,N,P,...)      % 同上,中括号不是必须4. R = rand(..., CLASSNAME) % 生成CLASSNAME类型的随机数,如 'double' or 'single'

例如生成double类型的5×3均匀分布的0到1间随机数:

 1. R = rand(5,3,'double');

同理,我们想要生成100个位于[a,b]间的数据可表示为:

 1. R = a + (b-a).*rand(100,1);

2、randi(…)
  randi(N) 是生成(0,N]间均匀分布的伪随机数,并且数都是整数,所以每个数是位于1到N之间。它的表达形式有以下几种:

 1. R = randi(iMax)            % 生成1:iMax之间的均匀分布随机数2. R = randi(iMax,m,n)        % 生成m×n的1:iMax之间的均匀分布随机数3. R = randi([iMin,iMax],m,n) % 生成m×n的iMin:iMax之间的均匀分布随机数

例如:

 1. R1 = randi(10,5,1);      % 生成5×1的1:10之间随机数2. R2 = randi([10,20],2,3); % 生成2×3的10:20之间随机数

3、randn(…)
  有时候我们希望生成的随机数是呈现正态分布的,而不是随机分布,这时候我们就需要使用randn函数了。它生成的随机数整体概率为正态分布,均值为0,方差为1。也就是说生成的数中出现0的概率最大,而越往无穷或者负无穷概率越小,但是出现的随机数可能为所有实数,只不过出现的概率不同。它的格式如下:

 1. R = randn(N)   % 生成N×N个正态分布的随机数2. R = randn(M,N) % 生成M×N个正态分布的随机数

例如:

 1. R = randi(3);      % 生成3×3的正态分布的随机数

4、稳定的重启分布rng
  这里我们来看一下如何让每次程序运行生成的随机数都一样,主要借助的是rang函数,格式如下:

 1. rng('default');2. R = rand(1,5); % 每次程序运行生成恒定的1×5随机数

此外还有生成同样分布的表达方式:

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

————————————————
版权声明:本文为CSDN博主「无鞋童鞋」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/FX677588/article/details/72811673

matlab生成随机数的rand、randi和randn三种形式相关推荐

  1. Matlab常用函数:rand,randi和randn区别

    简单介绍 1.rand()函数 功能:rand() 生成一个均匀分布的伪随机数,分布在(0~1)之间. 主要语法: rand(m,n)生成m行n列的均匀分布的伪随机数.rand(m,n,'double ...

  2. matlab seed函数_如何用matlab生成随机数函数_matlab随机数生成函数

    如何用matlab生成随机数函数 1. MATLAB 函数 rand 产生在区间 (0, 1)的均匀随机数,它是平均分布在 (0,1)之间.一个称为seed的值则是用来控制产生随机数的次数.均匀随机数 ...

  3. 【转】利用matlab生成随机数函数

    原文地址:利用matlab生成随机数函数 rand(n):生成0到1之间的n阶随机数方阵 rand(m,n):生成0到1之间的m×n的随机数矩阵 (现成的函数) betarnd:贝塔分布的随机数生成器 ...

  4. 生成介于0.95-1的随机数MATLAB,matlab生成随机数函数

    matlab生成随机数函数 1. MA TLAB 函数 rand 产生在区间 (0, 1)的均匀随机数,它是平均分布在 (0,1)之间.一个称为seed的值则是用来控制产生随机数的次数.均匀随机数函数 ...

  5. matlab滤波器设计工具箱带阻滤波器,用matlab信号处理工具箱进行fir滤波器设计的三种方法...

    用matlab信号处理工具箱进行fir滤波器设计的三种方法 摘 要 介绍了利用 MATLAB 信号处理工具箱进行 FIR 滤波器设计的三种方法:程序设计法. FDATool 设计法和 SPTool 设 ...

  6. 16bit随机数生成matlab,关于matlab生成随机数

    一,matlab中生成随机数主要有三个函数:rand, randn,randi 1,rand 生成均匀分布的伪随机数.分布在(0~1)之间 主要语法:rand(m,n)生成m行n列的均匀分布的伪随机数 ...

  7. MATLAB 生成随机数 方法总汇 (各分布配图参考)

    目录 a. 基本随机数 1.rand() 2.randn() b. 连续型分布随机数 3.unifrnd() 4.normrnd() 5.chi2rnd() 6.frnd() 7.trnd() 8.b ...

  8. matlab提取电压基波分量,有源电力滤波器三种基波提取方法的对比分析

    随着现代电力电子技术的飞速发展,电网中增加了大量的非线性负载,如大容量变流设备.变频设备.开关电源等的广泛应用,导致大量谐波的产生,这些谐波使电网电压和电流波形发生畸变,使得电能质量日益下降. 有源电 ...

  9. matlab生成随机数小结,MATLAB生成随机数总结

    1,rand 生成均匀分布的伪随机数.分布在(0~1)之间 语法:rand(m,n)生成m行n列的均匀分布的伪随机数 rand(m,n,'double')生成指定精度的均匀分布的伪随机数,参数还可以是 ...

最新文章

  1. ucgui下制作漂亮按键
  2. MPB:中国地大侯卫国组-​ 针对热泉原位培养矿物的低质量DNA提取方法
  3. 申请重新邮寄CCNA证书成功!!!!!(转)
  4. ubuntu 安装mysql5.6
  5. 第15届全国大学生智能汽车竞赛 人工智能挑战赛(百度)
  6. 早期的增长黑客 PayPal 如何在2000年初达到每日7%到10%的营收成长?
  7. Oracle RAC 客户端连接负载均衡(Load Balance)
  8. CecOS v1.4 中文企业云操作系统 管理员及用户指南发布
  9. 今天开始在博客园正式安家!
  10. 20应用统计考研复试要点(part7)--统计学
  11. Linux进程之间通信 信号
  12. java怎么设置命令行参数_java 命令行参数
  13. [转载] 【Python】set() 集合操作与运算 元素输出顺序
  14. ExecuteReader在执行有输出参数的存储过程时拿不到输出参数
  15. 连接服务器打印机文件名无效,excel服务器-办公室常识——共享服务器文件报错,共享打印机无法打印的解决办法(解决word、excel不能打印))...
  16. android图片文字识别器,图片转换文字识别器
  17. 布隆过滤器在HBase中的应用
  18. MindManager思维导图软件中如何下载使用行业分析模板教程分享
  19. Gartner发布《2021年企业低代码平台魔力象限》低码一体化平台成趋势
  20. LDO上电瞬间微过冲问题解决和讨论

热门文章

  1. Openstack magnum 简介
  2. 有关园区经营管理平台的品牌推荐——上海智链合创
  3. 用python给男朋友写的小程序
  4. vant 验证手机号_手机维修英汉小辞典(V字头1:VA-VB)
  5. 学校计算机教室自查报告,学校专用教室自查报告
  6. 第四章:图像形态学处理 5-礼帽和黑帽
  7. C语言的数据类型详解及应用
  8. fairuse4wm源码_使用FairUse Wizard 2.9将DVD电影直接转换为AVI
  9. 简单的动态网页设计及开发(关联数据库)
  10. 2012r2ad虚拟服务器升级2016,Windows Server 2016 Hyper-V之滚动式升级Hyper-V2012R2群集到2016 | 365vCloud的云计算之旅...