看板 MATLAB 關於我們 聯絡資訊
我的資料格式長這樣 RS(m,n,t) 表示一個m*n的平面(二維矩陣) 在時間t 現在我想把m*n拉成一個一維向量 並且按照時間排列 變成RSline(m*n,t) 這樣的型式 我現在只想到用FOR的方法暴力寫 for i=0:(size(RS,3)-1) RSline(:,i+1)=RS((1+m*n*i):(m*n+m*n*i)); end 或是 for i=0:(size(RS,3)-1) RSline2(:,i+1)=reshape(RS(:,:,i+1),m*n,1); end 不過這兩個跟方法也只是換句話說 處理時間一樣久 不知道版友有沒有什麼小秘訣可以加速? 感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 111.251.179.121
DKer:reshape 04/18 14:55
經由版友提醒我再仔細的看一次reshape 發現我根本和我要的答案擦身而過... RSline=reshape(RS,m*n,t); 這樣就好了 對吧?! ※ 編輯: rewq7890 來自: 111.251.179.121 (04/18 15:02)
Gwaewluin:就是這麼簡單,另外注意一下元素是用column為主在排的 04/18 16:35
ak075:permute 04/21 21:30