Matlab二维数组和其应用.doc
文本预览下载声明
Matlab:二维数组及其应用二维数组实际上也是一个矩阵。应此直接创建一个矩阵就行。创建的方法你应该会吧,就是直接按行方式输入每个元素:同一行中的元素用逗号(,)或者用空格符来分隔,且空格个数不限;不同的行用分号(;)分隔。所有元素处于一方括号([ ])内。比如,创建一个3×5的矩阵(对应3×5的二维数组)A = [12 62 93 -8 22; 16 2 87 43 91; -4 17 -72 95 6]A = 12 62 93 -8 22 16 2 87 43 91 -4 17 -72 95 6当然也可以用专门用来创建多维数组的cat函数来创建。具体如下:函数 cat格式 A=cat(n,A1,A2,…,Am)说明 n=1和n=2时分别构造[A1;A2]和[A1,A2],都是二维数组,而n=3时可以构造出三维数组。例如: A1=[1,2,3;4,5,6;7,8,9];A2=A1; A3=cat(2,A1,A2)A3 = 1 2 3 1 4 7 4 5 6 2 5 8 7 8 9 3 6 9这样A3就是一个二维数组此外还有诸如特殊矩阵的创建方法等 这里就不列举了 你可以百度 或者Google一下二维数组的变换我还不太确定你的意思:这里就提供几个矩阵的操作:1.矩阵的变维矩阵的变维有两种方法,即用“:”和函数“reshape”,前者主要针对2个已知维数矩阵之间的变维操作;而后者是对于一个矩阵的操作。(1)“:”变维例1-48 A=[1 2 3 4 5 6;6 7 8 9 0 1]A = 1 2 3 4 5 6 6 7 8 9 0 1 B=ones(3,4)B = 1 1 1 1 1 1 1 1 1 1 1 1 B(:)=A(:)B = 1 7 4 0 6 3 9 6 2 8 5 1(2)Reshape函数变维格式 B = reshape(A,m,n) %返回以矩阵A的元素构成的m×n矩阵BB = reshape(A,m,n,p,…) %将矩阵A变维为m×n×p×…B = reshape(A,[m n p…]) %同上B = reshape(A,siz) %由siz决定变维的大小,元素个数与A中元素个数相同。矩阵变维例子: a=[1:12]; b=reshape(a,2,6)b = 1 3 5 7 9 11 2 4 6 8 10 122.矩阵的变向(1)矩阵旋转函数格式 B = rot90 (A) %将矩阵A逆时针方向旋转90°B = rot90 (A,k) %将矩阵A逆时针方向旋转(k×90°),k可取正负整数。例如: A=[1 2 3;4 5 6;7 8 9]A = 1 2 3 4 5 6 7 8 9 Y1=rot90(A),Y2=rot90(A,-1)Y1 = %逆时针方向旋转 3 6 9 2 5 8 1 4 7Y2 = %顺时针方向旋转 7 4 1 8 5 2 9 6 3(2)矩阵的左右翻转函数 fliplr格式 B = fliplr(A) %将矩阵A左右翻转(3)矩阵的上下翻转函数 flipud格式 B = flipud(A) %将矩阵A上下翻转例如: A=[1 2 3;4 5 6]A = 1 2 3 4 5 6 B1=fliplr(A),B2=flipud(A)B1 = 3 2 1 6 5 4B2 = 4 5 6
显示全部