[討論] 三維矩陣資料轉成二維且橫的排

看板MATLAB作者 (tintato)時間10年前 (2015/03/26 02:10), 10年前編輯推噓2(203)
留言5則, 2人參與, 最新討論串1/1
請教各位大大 若 data <12x40x43700 double> 要如何轉成二維的資料且是從橫的開始排呢? 變成這樣 temp <43700x480 double> 有試過reshape 不過他是從直的開始排 以下是我使用的方式 temp = reshape(data,43700,480); 請問應該要使用什麼指令呢? 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.115.155.201 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1427307013.A.D45.html

03/26 03:15, , 1F
permute
03/26 03:15, 1F
permute試不太出來 試過發現可以這樣 temp = reshape(data,480,43700); x=temp'; ※ 編輯: hnuuy (140.115.155.201), 03/26/2015 11:51:54

03/26 14:01, , 2F
兩行可以縮成一行吧 temp=reshape(data,480,43700)';
03/26 14:01, 2F

03/26 20:04, , 3F
permute 是transpose的推廣,在你的情況下可以寫成
03/26 20:04, 3F

03/26 20:06, , 4F
temp=reshape(permute(data,[3 1 2]),43700,[]);
03/26 20:06, 4F

03/26 20:06, , 5F
或是temp=premute(reshape(data,480,[]),[2 1]);
03/26 20:06, 5F
文章代碼(AID): #1L4le5r5 (MATLAB)
文章代碼(AID): #1L4le5r5 (MATLAB)