MATLAB矩阵相关函数学习--初级函数

matlab也叫矩阵实验室,顾名思义矩阵在matlab中意义非凡。下面对矩阵常用函数进行描述。
矩阵的创建和数组的创建类似,例如:A = [1: 5; 2: 6];语句的含义就是创建一个2行5列的矩阵,其中冒号两端的数据代表数据段的起始,默认歩阶为1。
若想对矩阵中相应位置的数据进行显示则可以一维/二维的方法进行提取,如:f1 = A(1,3)表示显示上述矩阵第1行第3列的数据,也可以通过一维方法如:f1 = A(5),表示对该矩阵第五个数据进行提取显示,**需注意的是,矩阵是按列进行排序,**所以5应该是一列一列的数。
矩阵单双下标的转换。如上述所说可以通过一个数字和一对数字表示一个矩阵的位置。先生成一个矩阵A = [1: 5; 2:6];先进行双下标到单下标的转换,bianhuan1 = sub2ind(size(A),2,3),返回的是2行3列对应的单下标的数值。但下表到双下标的转换,bianhuan2 = ind2sub(size(A),4),返回的是单下标4所对应的双下标的一组坐标。
矩阵的查找与替换。find函数可用于矩阵的查找,例:a = find(A>2),返回A矩阵中大于2的单下标值,a = find(A>2)=0,则是将矩阵A中大于2的数字全部变为0。
矩阵的自动扩充。当对矩阵复制超过原有矩阵范围时,矩阵进行自动扩充。
矩阵合并。创建两个矩阵,A=[1:4;5:8];B=[1:2;3:4];使用cat函数对矩阵进行合并,合并时需注意,无论是对行还是列进行合并前必须要求两个矩阵的行或者列数相同才可以,例如C = cat(2, A, B)表示是对行进行合并,括号中的2改成1则表示对列进行合并,因为矩阵中是以列存储的,所以当涉及到由数字代表行列时,默认是1代表列,2代表行,除了这种合并函数,我们还可以通过horzcat和vertcat分别表示行合并和列合并。
矩阵的块操作。我们可以通过repmat函数对矩阵进行整块的操作,将一个矩阵作为一个块(元素)进行操作。例如我们创建一个A = magic(2),2行2列的随机矩阵,B = repmat(A, 2, 3),则是以A为单位,生成一个2行3列的矩阵B,矩阵B一共为4行6列形式,该函数还可以写成C = repmat(A, [2, 3]).
将多个矩阵作为对角块产生新的矩阵。可以通过blkdiag函数将所选的矩阵放在新的矩阵的对角线上,例如:C = blkdiag(A, B),或C = blkdiag(B, A)A,B的顺序则代表在新矩阵中对角线的前后位置。
矩阵删除元素。通过对矩阵元素赋值空表示删除该元素,A( x:y )其中x,y分别表示矩阵的行和列,行和列都可以进行多选,通过[1 3]表示1,3行或者1,3列。
矩阵的转置。矩阵转置我们一般通过对矩阵添加半边单引号表示转置,如:B = A’;也可以通过transpose函数表示转置。需要注意的是,如果转置矩阵中含有复数直接转置将会将复制变为共轭复数。如果不想转换为共轭复数,可以通过加点的方法,如:C = A.’。
矩阵的旋转。rot函数,B = rot90(A,1);表示对A旋转90度,数字1代表90的倍数。
矩阵的翻转。fliplr表示左右翻转,flipud表示上下翻转,也可以通过flipdim(A, 1)表示左右翻转,将1改为2表示上下翻转。
矩阵尺寸改变。reshape函数可以重新定义矩阵的行列数。
矩阵的加减。矩阵的加减要求矩阵的维数必须相同,相应位置相加减。
矩阵的相乘。矩阵的相乘分为直接相乘和点乘两种,直接相乘采用线性代数中矩阵运算方法即第一个矩阵的列与第二个矩阵的行要相等,点乘则为对应位置数值直接相乘。
矩阵的除法则需要一定的线性代数知识,在此就不尽兴赘述。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

big-moon

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值