zoukankan      html  css  js  c++  java
  • matlab特典之矩阵(数组)运算

    特殊矩阵(数组)的创建

    zeros  

      格式:数组名=zeros(x);

      zeros用来创建一个x行x列值全为0的矩阵

      

    ones

      格式:数组名=ones(x);

      ones用来创建一个x行x列值全为1的矩阵

      

    eye

      格式:数组名=eye(x);

      eye用来创建一个x行x列值的单位矩阵矩阵

      

    多维数组的创建

      多维数组是什么呢,定义上来说也是数字的集合,只不过存放的维度变了,详见下图

      

      具有二维以上的数组在MATLAB中被称为多维数组,中文上我们习惯将第一维叫行,第二维叫列,第三位叫页。

       MATLAB中的多维数组是正常二维矩阵的扩展。通常要生成一个多维数组,首先创建一个二维数组然后再扩展它。

       首先我们定义一个二维数组,x=[1 2 3;4 5 6;7 8 9]

       

       在二维的基础上我们可以扩展第三维

       格式:数组名=(:,:,x)=二维数组的定义方式  

       作用:在第三维为x的位置赋值为等号右边的数组

       其中冒号:指代数组的前两维度的大小,我们不需要填进去,因为二维数组已经生成了我们只用管第三维即可

       

        我们上面说到的zeros,ones和eye也可以创建多维数组

      用法:数组名=函数名(x,y,z,...)   解释:创建一个多维数组其中第一维大小为x,第二为y,第三为z。。。

       

    数组直接的链接

      使用cat函数可将数组的直接相互链接起来生成一个新数组。

      格式:数组名=cat(dim,A1,A2...)其中dim为你要链接的个数

      

    数组的各种常见函数

       数组有很多函数可以用,具体详见:https://www.yiibai.com/matlab/matlab_arrays.html

      在此列举几个常用的

    length

       length为数组的大小,数值上等于行数和列数的较大值

        

    size  

      size返回数组的维度,即各个维度的大小

      

       可以看到x是一个3行3列2页的数组

    ndims 

      ndims返回数组的维数

       

    transpose

      transpose(x)   将数组x进行转置

       

    矩阵的相互运算

    矩阵乘法

      符号为*,x=A*B代表x为矩阵A*矩阵B

      

    阵列乘法

       符号为.* ,x=A.*B代表x为矩阵A和矩阵B每行每列的对应元素乘起来,AB必须具有相同的大小。

       

    TO be continue...

      

      

      
  • 相关阅读:
    深度学习大牛Yoshua Bengio
    mysql select简单用法
    CF 191 div2
    MySQL 讨厌哪种类型的查询
    Python 中的list小结
    定时器常用的两种工作方式及编程要点
    Linux下which、whereis、locate、find 区别
    Dalvik虚拟机的优化机制
    [leetcode]Partition List
    tomcat:Could not publish to the server. java.lang.IndexOutOfBoundsException
  • 原文地址:https://www.cnblogs.com/qq2210446939/p/12534252.html
Copyright © 2011-2022 走看看