Re: [問題] reshape函數已回收

看板MATLAB作者 (幻無影)時間15年前 (2010/04/11 10:23), 編輯推噓3(300)
留言3則, 3人參與, 最新討論串2/4 (看更多)
※ 引述《squall500 (一年之後又一年)》之銘言: : 我現在經由運算得到一個矩陣A,其中是由m個維度n*k的子矩陣組成 : A = [a1;a2;...;am] : 在這裡我知道的資訊只有整個大矩陣A : 裡面的子矩陣a1,a2,...,am我都不知道 : 現在我希望能把A變成 A = [a1,a2,...,am] : 有辦法不透過迴圈作到嗎? : 我試過reshape,不過它是逐行取值,還是沒辦法 : 能讓reshape逐列取值嗎? % 示範用,隨便設數字 m = 5; n = 2; k = 3; A = rand(n*m, k); % 隨便生一個矩陣示範 C = mat2cell(A, repmat(n, 1, m), k)'; % 利用 cell 來實作 B = cell2mat(C); % 要的結果 這樣嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.113.94.230

04/11 15:02, , 1F
好漂亮! 感謝!
04/11 15:02, 1F

04/11 21:51, , 2F
不過這用了細胞矩陣,當矩陣太大時可能會被拖慢
04/11 21:51, 2F

04/11 22:14, , 3F
應該可以用多維矩陣
04/11 22:14, 3F
文章代碼(AID): #1BmJAEpJ (MATLAB)
討論串 (同標題文章)
文章代碼(AID): #1BmJAEpJ (MATLAB)