1. 程式人生 > >MATLAB基礎知識——1.4矩陣元素的引用

MATLAB基礎知識——1.4矩陣元素的引用

運算符 子矩陣 知識 str res 說明 向量 列存儲 font

矩陣元素的引用方式

(1)通過下標引用矩陣元素,下標必須為正整數,且用圓括號括起來。

(2)通過序號來引用,在MATLAB中矩陣元素按列存儲。序號與下標是一一對應的,以m*n的矩陣A為例,矩陣A(i,j)的序號就是(j-1)*m+i

  sub2ind函數:將矩陣中指定元素的行、列下標轉換成存儲的序號。調用格式為

  D=sub2ind(S,I,J),S說明要轉換的矩陣的行數和列數,通常有size函數獲取;I是要轉換元素的行下標,J是列下標,如果I和J是矩陣的話,表示要將矩陣中多個元素的行列下標進行轉換;D為序號

>> A=[1:3;4:6]

A =

  1   2   3
  4   5   6

//將A矩陣的(1,1),(2,1),(2,3),(2,2)下標進行轉化

>> D=sub2ind(size(A),[1,2;2,2],[1,1;3,2])

D =

  1    2
  6    4

  ind2sub函數:將矩陣元素的序號轉換成行列下標,其調用格式為

  [I,J]=ind2sub(S,D),其中S指定矩陣的行數和列數,D為序號,[I,J]為下標

//將3行3列的矩陣中序號為1,3,5的元素下標轉化

>> [i,j]=ind2sub([3,3],[1,3,5])

i =

  1   3   2


j =

  1   1   2


利用冒號表達式獲取子矩陣

子矩陣是指由矩陣中一部分元素構成的矩陣

A(i,:) 表示第i行的全部元素

A(i:i+m;k:k+m) 表示第i到i+m行且第k到k+m列中所有元素

end運算符:表示某一維的末尾元素的下標


利用空矩陣刪除元素

空矩陣是指沒有任何元素的矩陣,例如A[ ]。

>> A=[1:9]

A =

  1 2 3 4 5 6 7 8 9

//將A矩陣中所有行的3到6列元素刪除

>> A(:,[3:6])=[]

A =

  1 2 7 8 9


改變矩陣的形狀

reshape(A,m,n):在矩陣總元素不變的前提下,將矩陣A重新排列成m*n的而為矩陣

>> A=[1:9];
>> B=reshape(A,3,3)

B =

  1    4    7
  2    5    8
  3    6    9

A(:)將矩陣A的每一列元素堆疊起來,成為一個列向量

MATLAB基礎知識——1.4矩陣元素的引用