[討論] 資料轉換成元素為複數形式的矩陣問題

看板MATLAB作者 (PA魔熊隊)時間6年前 (2018/05/16 01:47), 編輯推噓2(200)
留言2則, 2人參與, 6年前最新討論串1/1
最近在分析訊號資料,每一資料點用複數型式表示,但實虛部分開(奇數行實部,反之為 虛部),所以一資料點將佔兩空間隔, 例: 原始資料 為 n*8矩陣d,n為總橫列數 第一行:2 5 1 -4 7 9 -1 -6 … … … 第n行 第一行資料意義:2+5i ,1-4i ,7+9i, -1-6i 然後為了將原始資料兩者合併成複數形式(也就是轉為n*4矩陣f,f(1,1)=2+5i),我嘗 試使用迴圈去組合新的形式 我用rem來判斷位數 所以餘數非0的話,可得到一複數值 i=sqrt(-1)ones(1,4); for n=1:n for r=1:8 if rem ~=0 f(n,r)=d(n,r)+d(n,r+1)*i. % end end 但這迴圈在%列就卡住 想請問f(n,r)是否無法用這方法去處理 我原本是將矩陣d轉成8*n矩陣再單純用d()來處理,可成功,但這就要轉換矩陣 例:f(1)=d(1)+d(1+1)*i -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 39.8.34.206 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1526406428.A.F78.html

05/16 07:28, 6年前 , 1F
r = 1:7
05/16 07:28, 1F

05/16 08:36, 6年前 , 2F
f=d(:,1:2:end)+1i*d(:,2:2:end); 之前的問題解決了嗎?
05/16 08:36, 2F
文章代碼(AID): #1Q-nqSzu (MATLAB)
文章代碼(AID): #1Q-nqSzu (MATLAB)