首頁 > 軟體

Matlab中矩陣資料存取的N種方式

2019-12-25 05:04:21

Matlab提供了靈活的矩陣存取操作方式,下面介紹常用的方式。


1

方法一,用冒號「:」一次性取矩陣中的所有元素,這在對矩陣所有元素求和時很有用,求矩陣的最大最小值等時很有用,只需調一次相應的函數:

clc

a1=1:6

A=reshape(a1,2,[])

a2=A(:)

sA1=sum(sum(A))

sA2=sum(A(:))

maxA1=max(max(A))

maxA2=max(A(:))

執行結果可以看出,matlab中矩陣是按列存,與C語言中的陣列不同。



2

方法二,用冒號加數位存取指定區域元素:

clc

a1=1:16

A=reshape(a1,4,[])

subA1=A(2:4,1:3)


3

方法三,巧妙利用end關鍵詞,獲取某維最後位置的元素:

clc

a1=1:12

A=reshape(a1,3,[])

last=A(end)

subA1=A(2:end,3:end)


4

方法四,獲取多個指定位置的數:

clc

a1=1:12

A=reshape(a1,3,[])

eles=A([1 4 5 6 9 end])


5

方法五,巧妙用真值矩陣獲取滿足一定條件的資料:

clc

a1=1:12

A=reshape(a1,3,[])

mask1=A>6

eles1=A(mask1)


6

方法六、巧妙利用find函數:

clc

a1=1:9

A=reshape(a1,3,[])

ind=find(A>5)

eles1=A(ind)



IT145.com E-mail:sddin#qq.com