解决方案

MATLAB中生成随机数方法总结

seo靠我 2023-09-25 13:48:53

好久没用MATLAB了,今天在利用MATLAB进行数据处理时,突然发现自己忘记了该如何产生自己需要的随机数形式,于是又查了一通资料。现对其进行一个简单的总结,供自己和大家以后参考:

1. randi :SEO靠我 产生均匀分布的伪随机整数

%产生一个1至10之间的随机矩阵,大小为2x5;

s1 = randi(10,2,5);

%产生一个-5至5之间的随机矩阵,大小为1x10;

s2 = randi([-5,5],1SEO靠我,10);

2. rand: 产生均匀分布的伪随机数

%产生一个0至1之间的随机矩阵,大小为1x5;

s3 = rand(1,5);

%产生一个0至1之间的二进制随机矩阵,大小为1x10;

s4 = roundSEO靠我(rand(1,10));

%产生一个a至b之间的随机矩阵,大小为1x5;

% a + (b-a) * rand(1,5); 如:a,b = 2,5

s5 = 2 + (5-2) * rand(1,5);

3SEO靠我. linspace:产生线性间隔向量

%创建一个从1到10的100个线性间隔的向量,大小为1x100;

s6 = linspace(1,10);

%创建一个从0到10的6=[(10-0)/2+1]个线性间SEO靠我隔数的向量,大小为1x6;

s7 = linspace(0,10,6);

4. unifrnd:产生连续统一的随机数字

%创建一个大小从0到2之间的随机矩阵,size为1x5;

s8 = unifrnd(0,SEO靠我2,1,5);

%从(0,1)(1,2)(2,3)...中分别产生一个随机数,组成随机矩阵;

%如:从(0,1)(1,2)(2,3)(3,4)(4,5)分别产生一个随机数组成矩阵;

a = 0:4;

b = SEO靠我1:5;

s9 = unifrnd(a,b);

5. unidrnd:产生离散的统一随机数字

%创建一个大小从1到10之间的随机矩阵,size为2x5;

s10 = unidrnd(10,2,5);  

%产生一个SEO靠我10以内的随机数;

s11 = unidrnd(10);

s12 = unidrnd(10);

s13 = unidrnd(10);

基本常用的都罗列出来了,另外还有一些其他随机数,方法其本类似,这里就不在一SEO靠我一列举。

“SEO靠我”的新闻页面文章、图片、音频、视频等稿件均为自媒体人、第三方机构发布或转载。如稿件涉及版权等问题,请与 我们联系删除或处理,客服邮箱:html5sh@163.com,稿件内容仅为传递更多信息之目的,不代表本网观点,亦不代表本网站赞同 其观点或证实其内容的真实性。

网站备案号:浙ICP备17034767号-2