matlab中reshape是什麼意思

2021-03-03 20:35:32 字數 2886 閱讀 1494

1樓:風兒lamp沙兒

reshape函式重新調bai整矩陣的行數、列

du數、維數zhi。

呼叫格式dao

:b = reshape(a,m,n)

返回一個m*n的矩陣b, b中元版素是按列從a中得到權的。如果a中元素個數沒有m*n個, 則會引發錯誤。

b = reshape(a,m,n,p,...)和b = reshape(a,[m n p ...])

返回一個和a具有相同元素的n(不是上面的引數n)維陣列。但b的尺寸是m*n*p*...,m*n*p*...必須和prod(size(a))相等。即a和b元素個數相等。

b = reshape(a,...,[ ],...)

計算由佔位符[ ]所表示的尺寸的長度,這樣維度的乘積等價於prod(size(a))。而prod(size(a))的值必須能被的指定維數的乘積所整除。在這裡面佔位符[ ] 只能使用一次。

b = reshape(a,siz)

返回一個和a元素相同的n維陣列,但是由向量siz來決定重構陣列維數的大小,prod(siz)的數量值必須和prod(size(a))的保持一致。

matlab中的reshape命令有什麼數學意義?

2樓:四舍**入

reshape就是bai把指定的矩陣改變du形狀,但是元素個數不zhi變,

例如,行向量

:dao

a = [1 2 3 4 5 6]

執行內下面語句把它變容成3行2列:

b = reshape(a,3,2)

執行結果:

b =1 4

2 53 6

3樓:決明子

給你抄個例程吧:

x=[1,2,3;4,5,6];

y=reshape(x,1,);

z=reshape(x,3,2);

最後結襲果:

x=1 2 3

4 5 6

y=1 4 2 5 3 6

z=1 5

4 3

2 6

matlab裡面矩陣是bai按列儲存的du,即先存第zhi一列,然後第dao二列....

4樓:匿名使用者

reshape函式重新調整矩陣的行數、列數、維數

5樓:匿名使用者

reshape函式

用於重新調整矩陣的行數、列數、維數,但是元素個數不變。

在matlab命令視窗中鍵入

版doc reshape或help reshape即可獲得該權函式的幫助資訊。

呼叫格式:

b = reshape(a,m,n)

返回一個m*n的矩陣b, b中元素是按列從a中得到的。如果a中元素個數不等於m*n, 則會引發錯誤。

b = reshape(a,m,n,p,...)

返回一個和a具有相同元素的n維 陣列。但b的尺寸是m*n*p*...,m*n*p*...必須和 prod(size(a))相等。即a和b元素個數相等。

b = reshape(a,[m n p ...])

b = reshape(a,...,,...)

b = reshape(a,siz)

相關函式: shiftdim, squeeze, circshift, permute, repmat

matlab中reshape函式中把a中元素進行重塑成m×n×p×...的矩陣是什麼意思

6樓:匿名使用者

a = rand(2,3,4);

prod(size(a))

b = reshape(a, 4, 6);

a是一個2x3x4的矩陣,size(a)就是[2 3 4],即a的維度

prod是求向量的乘積,所以prod(size(a))就是24這裡,b是把a矩陣reshape成4x6,要求prod(size(b))也是24,即prod(size(a))和prod(size(b))必須一樣。

7樓:風兒lamp沙兒

m×n是二維

矩陣,m×n×p是三維矩陣,m×n×p×...是多維矩陣,具體是什麼矩陣,看具體的問題。prod(size(a))是求矩陣a各維的乘積,也就是a矩陣中元素的個數。所以重排後矩陣元素個數必須相同,不然多出的那一個或少一個元素咋辦。。。

matlab中!=是什麼意思

8樓:匿名使用者

!=:肯定不是不等於的意思。matlab中不等於是~=

應該沒有這個符號,請把相關**拿出來

matlab中reshape(18:-1:1,3,3,2)命令中的18:-1:1,3,3,2分別都是什麼意思?萌新一枚,希望大神給講解一下。

9樓:不好好改就革

就是把18 17 16 ......一直到1這18個數字填入兩個3*3的矩陣中,後面的3,3,2就是這個意思。

怎麼填入呢,先填第一個矩陣,從第一列開始填入,然後是第二列,最後第三列。

比如說:a=reshape(18:-1:1,3,3,2);

那麼意味著這兩個3*3的矩陣分別是

a(1:3,1:3,1)=[18,15,12; 17,11,14; 16,13,10]

a(1:3,1:3,2)=[9,6,3; 8,5,2; 7,4,1]

10樓:u競猜王

函式格式:

b = reshape(a,sz1,...,szn)18:-1:1就是a,

3 3 2就是sz1 sz2 sz3

意思就是:將陣列18:-1:1,變成一個3x3x2的三維矩陣。

覺得有幫助就採納吧。

MATLAB中MAX的用法,matlab中max函式的用法問題

a是cell陣列,max函式不支援對cell陣列直接操作。可以這樣 aa cell2mat a max aa 各列最大值 max aa aa中所有元素最大值 max在數學中表示最大的集合元素,即最大值。min表示最小的意思。a 你這個地方a不是一個矩陣應該是 a 1 2 3 3 4 5 6 7 8 ...

matlab中怎麼產生Matlab中怎麼產生1到1之間的隨機數

x 2 rand m,n 0.5 產生m n個數,他們構成一個矩陣。一樓正解 例如 x 2 rand 5,5 0.5 x 0.7867 0.7374 0.1372 0.7279 0.7061 0.9238 0.8311 0.8213 0.7386 0.2441 0.9907 0.2004 0.636...

如何在matlab中呼叫matlab中已有的函式

呼叫函式檔案 myfile.m clear clcfor t 1 10 y mylfg t end 自定義函式檔案 mylfg.m function y mylfg x 注意 函式名 mylfg 必須與檔名 mylfg.m 一致 y x 1 3 注 這種方法要求自定義函式必須單獨寫一個m檔案,不能與...