matlab中repmat,size函數的用法

size函數總結

size(A)函數是用來求矩陣的大小的。

比如說一個A是一個3×4的二維矩陣:

1、size(A) %直接顯示出A大小

輸出:ans= 3 4

2、s=size(A)%返回一個行向量s,s的第一個元素是矩陣的行數,第二個元素是矩陣的列數

輸出:s= 3 4

3、[r,c]=size(A)%將矩陣A的行數返回到第一個輸出變量r,將矩陣的列數返回到第二個輸出變量c

輸出:r=3 c=4

4、[r,c,m]=size(A)

輸出:r=3 c=4 m=1
也就說它把二維矩陣當作第三維爲1的三維矩陣,這也如同我們把n維列向量當作n×1的矩陣一樣

5、當a是一個n維行向量時,size(A)把其當成一個1×n的矩陣,因此size(a)的結果是

ans = 1 n

而不是a的元素個數n

6、size(A,n)

如果在size函數的輸入參數中再添加一項n,並用1或2或3爲n賦值,則 size將返回矩陣的行數或列數。其中r=size(A,1)該語句返回的是矩陣A的行數, c=size(A,2) 該語句返回的是矩陣A的列數

repmat函數的用法

B = repmat(A,m,n)
B = repmat(A,[m n])
B = repmat(A,[m n p…])

這是一個處理大矩陣且內容有重複時使用,其功能是以A的內容堆疊在(MxN)的矩陣B中,B矩陣的大小由MxN及A矩陣的內容決定,如果A是一個3x4x5的矩陣,有B = repmat(A,2,3)則最後的矩陣是6x12x5

例如:

>>B=repmat( [1 2;3 4],2,3)
B = 

1      2      1     2    1    2

3      4      3     4    3    4

1     2     1     2     1     2

3     4     3     4     3     4

其結果變爲4X6。A也可以置放文字串,如:

>>C=repmat(' Long live the king!', 2,2)
C =
Long live the king! Long live the king!
Long live the king! Long live the king!

也可置放其他的:

>> D=repmat(NaN,2,5)

D =
NaN   NaN   NaN   NaN   NaN
NaN   NaN   NaN   NaN   NaN
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章