matlab入门1

rand用法 

rand是MATLAB的一种内置函数,用于生成均匀分布的伪随机数。它有几种不同的使用方法。

  1. rand: 无参数调用时,这个函数返回一个在0到1之间的随机浮点数。

  2. rand(n): 这个函数返回一个n x n的矩阵,其中每个元素都是一个在0到1之间的随机浮点数。

  3. rand(m, n): 这个函数返回一个m x n的矩阵,其中每个元素都是一个在0到1之间的随机浮点数。

  4. rand([m n]): 这个函数的功能与rand(m, n)相同,但是行数和列数是作为长度为2的向量参数传递给函数的。

  5. rand(size(A)): 这个函数返回一个与数组A相同大小的矩阵,其中每个元素都是在0到1之间的随机浮点数。

例如:

A = rand(3) 

输出结果:

0.8147    0.9134    0.2785
0.9058    0.6324    0.5469
0.7537    0.0975    0.9575

 rand(RandStream,m,n) 的用法:

创建 RandStream 对象。第一个参数指定生成随机数的算法,第二个参数是名值对参数,用于设置算法的属性。

stream = RandStream('mt19937ar','Seed',0);

  1. 在上面的例子中,我们使用了 Mersenne Twister 生成随机数,并设置种子为0。

  2. 使用 rand() 方法生成随机数。第一个参数是 RandStream 对象,第二个和第三个参数指定生成随机数矩阵的行数和列数。

r = rand(stream, m, n);

 练习:

% 注释
ss = 's'     %字符串的命名
b1 = 4
A1= 8       %有大小写的区别

abs(A)     %绝对值,类似c语言的数学函数库
char(97)   %将assic码为97的转换为字符
str = 'ilovemachinelearning' 

%matlab 核心矩阵运算
A = [1 2 3;4 5 6; 3 2 7] %%矩阵格式    行;行;行
B = A'      %% 矩阵转置
A * B       %%矩阵乘法
C = A(:)    %%转为列向量按照列排
D = inv(A)     %%矩阵求逆矩阵,要满足求逆的条件
A * D                %%单位阵
Q = randi(100,3,3)     %%生成一个三行三列三维的随机矩阵
E = zeros(3,3,3) %%zeros(行数,列数,维数)
E(:,:,1) = rand(3,3) %rand(m,n)生成m行n列的均匀分布的伪随机数 %
E(:,:,1) = rand(3,3,"double") %生成指定精度的伪随机数 还可以是single
%E(:,:,1) = rand(3,3)% rand(RandStream,3,3) 利用指定的RandStream(随机数流)生成伪随机数
E(:,:,2) = randn(3,3)       %%服从标准正态分布的整数随机数,语法同上
%%语法和以上两个稍微有点儿不同
randi(10)  %%在0-10之间生成一个均匀分布的伪随机数
randi([10,20])%%在开区间10-20之间生成一个均匀分布的伪随机数
E(:,:,3)  = randi([10,20],3,3)       %%同上服从标准正态分布的伪随机数

输出结果:

ss =

    's'


b1 =

     4


A1 =

     8


ans =

     8


ans =

    'a'


str =

    'ilovemachinelearning'


A =

     1     2     3
     4     5     6
     3     2     7


B =

     1     4     3
     2     5     2
     3     6     7


ans =

    14    32    28
    32    77    64
    28    64    62


C =

     1
     4
     3
     2
     5
     2
     3
     6
     7


D =

   -1.2778    0.4444    0.1667
    0.5556    0.1111   -0.3333
    0.3889   -0.2222    0.1667


ans =

    1.0000         0   -0.0000
         0    1.0000   -0.0000
         0    0.0000    1.0000


Q =

    42    63     7
    16    74    96
    82    81    50


E(:,:,1) =

     0     0     0
     0     0     0
     0     0     0


E(:,:,2) =

     0     0     0
     0     0     0
     0     0     0


E(:,:,3) =

     0     0     0
     0     0     0
     0     0     0


E(:,:,1) =

    0.7551    0.1565    0.9322
    0.7424    0.4573    0.8351
    0.8311    0.6181    0.8954


E(:,:,2) =

     0     0     0
     0     0     0
     0     0     0


E(:,:,3) =

     0     0     0
     0     0     0
     0     0     0


E(:,:,1) =

    0.5825    0.0349    0.0364
    0.5827    0.8854    0.7461
    0.8549    0.4077    0.1548


E(:,:,2) =

     0     0     0
     0     0     0
     0     0     0


E(:,:,3) =

     0     0     0
     0     0     0
     0     0     0


E(:,:,1) =

    0.5825    0.0349    0.0364
    0.5827    0.8854    0.7461
    0.8549    0.4077    0.1548


E(:,:,2) =

   -1.8443   -0.9107   -0.2228
    0.2884   -0.1619    0.2721
   -0.9509   -0.4889   -1.1685


E(:,:,3) =

     0     0     0
     0     0     0
     0     0     0


ans =

     2


ans =

    11


E(:,:,1) =

    0.5825    0.0349    0.0364
    0.5827    0.8854    0.7461
    0.8549    0.4077    0.1548


E(:,:,2) =

   -1.8443   -0.9107   -0.2228
    0.2884   -0.1619    0.2721
   -0.9509   -0.4889   -1.1685


E(:,:,3) =

    13    18    19
    18    17    13
    12    19    13

>> 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值