MATLAB初始化数据方法汇总

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

% 产生满足1-10之间均匀分布的3*5随机矩阵
a1 = randi(10, 3, 5);
% 产生满足-5-5之间均匀分布的2*10随机矩阵
a1 = randi([-5, 5], 2, 10);

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

% 产生满足[0, 1]均匀分布的4*5随机矩阵
a2 = rand(4, 5);
% 产生满足[a, b]均匀分布的2*5随机矩阵(常用)
a2 = a+(b-a)*rand(2, 5);

3 .linspace():产生一定区间内一定间隔的向量
Examples:

%产生一个[1, 10]100个线性间隔的向量, 大小为1x100;
a3 = linspace(1, 10)

;

%产生一个[2, 10][(10-2)/2+1]=5个线性间隔数的向量,大小为1x6;
a3 = linspace(2, 10);

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

%产生一个[1, 2]之间的随机矩阵,大小为1x5;
a4 = unifrnd(1,2,1,5);

unifrnd(a, b):以a的每一个元素为左界,b的每一个元素为右界分别产生一个随机数,组成随机矩阵;

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

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

%产生一个大小从110之间的随机矩阵,大小为2x5;
a6 = unidrnd(10,2,5);  
%产生一个10以内的随机数;
a7 = unidrnd(10);

基于以上一种方法,有些只适用于生成矩阵或向量,可以采用repmat()对数据进行复制操作,以达到所想要的效果;
Examples:

a8 = repmat(A,m,n)
a8 = repmat(A,[m n])
a8 = repmat(A,[m n p…])

将矩阵A复制mxn块,即a8由A(a x b)的行的m次复制扩展和A的列的n次复制扩展而成,a8的大小为(ma x nb)
当A是一个数a时,该命令产生一个全由a组成的m x n矩阵。

References:
[1] https://blog.csdn.net/ywx1832990/article/details/78724812
[2] https://blog.csdn.net/xiaohe004/article/details/104774291

  • 3
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值