MATLAB中生成随机数方法总结

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

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

%产生一个1至10之间的随机矩阵,大小为2x5;
s1 = randi(10,2,5);

%产生一个-5至5之间的随机矩阵,大小为1x10;
s2 = randi([-5,5],1,10);

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

%产生一个0至1之间的随机矩阵,大小为1x5;
s3 = rand(1,5);

%产生一个0至1之间的二进制随机矩阵,大小为1x10;
s4 = round(rand(1,10));

%产生一个a至b之间的随机矩阵,大小为1x5;
% a + (b-a) * rand(1,5); 如:a,b = 2,5
s5 = 2 + (5-2) * rand(1,5);

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

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

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


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

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

%从(0,1)(1,2)(2,3)...中分别产生一个随机数,组成随机矩阵;
%如:从(0,1)(1,2)(2,3)(3,4)(4,5)分别产生一个随机数组成矩阵;
a = 0:4;
b = 1:5;
s9 = unifrnd(a,b);


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

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

%产生一个10以内的随机数;
s11 = unidrnd(10);
s12 = unidrnd(10);
s13 = unidrnd(10);



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


  • 88
    点赞
  • 662
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
Matlab,可以使用几种不同的方法生成随机数。其包括使用rand函数生成均匀分布的伪随机数,使用unifrnd函数生成在指定范围内的均匀分布的随机数,以及使用linspace函数生成线性间隔的向量。 如果你想生成一个0至1之间的随机矩阵,可以使用rand函数,例如: s3 = rand(1,5); 这将生成一个大小为1x5的随机矩阵,其的元素是均匀分布在0至1之间的伪随机数。 如果你想生成一个在指定范围内的随机矩阵,可以使用unifrnd函数,例如: s5 = 2 + (5-2) * rand(1,5); 这将生成一个大小为1x5的随机矩阵,其的元素是在2至5之间的均匀分布的伪随机数。 另外,如果你想生成一个线性间隔的向量,可以使用linspace函数,例如: s8 = linspace(0,2,5); 这将生成一个大小为1x5的向量,其的元素是从0到2之间等间隔的值。123 #### 引用[.reference_title] - *1* [MATLAB生成随机数方法总结](https://blog.csdn.net/kebu12345678/article/details/90437951)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item] - *2* *3* [MATLAB随机数](https://blog.csdn.net/qq_41686044/article/details/121754225)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值