Matlab产生随机数

介绍:

Matlab产生随机数在有些时候是非常必要的,比如在产生某个范围的随机数进行相关的测试等;

函数命令介绍:

1、rand:

rand(n):产生0到1之间的n阶随机数方阵;

rand(m,n):产生0到1之间的m行n列的随机数矩阵;

2、randn:此函数命令是产生白噪声的(均值为0,方差为1)

randn(n):产生0到1之间的n阶随机数方阵;

randn(m,n):产生0到1之间的m行n列的随机数矩阵;

两者的区别:rand是0-1均匀分布;randn是产生白噪声的;

3、randint:

randint(m,n,[1 N]):产生m行n列的1到N之间的整数型的随机数(有重复),与randint(m,n,N+1)效果相同;

4、randperm:

randperm(n):产生1到n的之间的整数型的无重复的随机排列,利用它可以得到无重复的随机数;

betarnd 贝塔分布的随机数生成器 
binornd 二项分布的随机数生成器 
chi2rnd 卡方分布的随机数生成器 
exprnd 指数分布的随机数生成器 
frnd f分布的随机数生成器 
gamrnd 伽玛分布的随机数生成器 
geornd 几何分布的随机数生成器 
hygernd 超几何分布的随机数生成器 
lognrnd 对数正态分布的随机数生成器 
nbinrnd 负二项分布的随机数生成器 
ncfrnd 非中心f分布的随机数生成器 
nctrnd 非中心t分布的随机数生成器 
ncx2rnd 非中心卡方分布的随机数生成器 
normrnd 正态(高斯)分布的随机数生成器 
poissrnd 泊松分布的随机数生成器 
raylrnd 瑞利分布的随机数生成器 
trnd 学生氏t分布的随机数生成器 
unidrnd 离散均匀分布的随机数生成器 
unifrnd 连续均匀分布的随机数生成器 
weibrnd 威布尔分布的随机数生成器

 

转载于:https://www.cnblogs.com/clay-whoami/p/5813372.html

Matlab中,可以使用rand函数来产生均匀分布的伪随机数。例如,使用rand函数可以产生一个0至1之间的随机矩阵,大小为1x5,代码如下: s3 = rand(1,5) 如果需要产生一个0至1之间的二进制随机矩阵,可以使用round函数对rand函数的结果进行四舍五入,代码如下: s4 = round(rand(1,10)) 如果需要产生一个a至b之间的随机矩阵,可以使用a + (b-a) * rand(1,5)的方式,其中a和b分别为所需范围的下限和上限。例如,如果a和b分别为2和5,可以使用以下代码产生一个大小为1x5的随机矩阵: s5 = 2 + (5-2) * rand(1,5) 除了rand函数,还可以使用unifrnd函数来产生连续均匀分布的随机数。unifrnd函数可以用来创建一个指定范围内的随机矩阵。例如,使用unifrnd函数可以创建一个大小从0到2之间的随机矩阵,大小为1x5,代码如下: s8 = unifrnd(0,2,1,5) 如果需要从不同的范围中分别产生随机数,可以使用unifrnd函数结合linspace函数。例如,从(0,1)(1,2)(2,3)...中分别产生一个随机数,可以使用以下代码: a = 0:4; b = 1:5; s9 = unifrnd(a,b) 另外,如果需要产生离散均匀分布的随机数,可以使用unidrnd函数。unidrnd函数可以用来创建一个指定范围内的离散均匀分布的随机矩阵。例如,使用unidrnd函数可以创建一个大小从1到10之间的随机矩阵,大小为2x5,代码如下: s10 = unidrnd(10,2,5) 如果只需要产生一个10以内的随机数,可以直接使用unidrnd函数,代码如下: s11 = unidrnd(10) 希望以上信息对您有所帮助。 #### 引用[.reference_title] - *1* *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^v91^koosearch_v1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值