看板 MATLAB 關於我們 聯絡資訊
※ 引述《icrtstyle (嘿嘿)》之銘言: : 我現在有8筆excel檔案的資料數據每一筆都是2500*6的矩陣 : A1 = xlsread('AAPL.xlsx'); : A2 = xlsread('C.xlsx'); : A3 = xlsread('GE.xlsx'); : A4 = xlsread('GS.xlsx'); : A5 = xlsread('IBM.xlsx'); : A6 = xlsread('INTC.xlsx'); : A7 = xlsread('MRK.xlsx'); : A8 = xlsread('PFE.xlsx'); : 我用這樣的方式讀進matlab,所以在workspace裡面會有A1~A8的資料 : 現在我要把A1~A8拿來做相同的運算 : R1(:,1)=log(A1(:,4))-log(A1(:,1)) : R2(:,1)=log(A2(:,4))-log(A2(:,1))....... : ..... : 一直做到R8 : 然後R1~R8繼續做另一個相同的運算 : 我的問題在於我如何把A1~A8讀出來做運算??? : 別叫我一筆一筆慢慢做啊~~~之後還有345個資料要處理~~ : 請各位幫忙一下了,謝謝!! for i=1:8 eval(['R' num2str(i) '(:,1)=log(A' num2str(i) '(:,4))-log(A' num2str(i) '(:,1)) ;']) end eval的功能是 把字串內的東西做運算 比方說 eval('x=10;y=5;') 直接後就跟直接執行x=10;y=5;效果是一樣的 但可以隨著迴圈更改變數名稱 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.112.103.220 ※ 編輯: diva 來自: 140.112.103.220 (11/28 02:31)
icrtstyle:感謝~!!!我要把eval這指令徹底弄懂才行~~~ 11/28 03:04
sunev:你要搞懂的是字串 11/28 16:07
chris70211:版上有詳細的教學 搜尋一下就知道了!! 11/28 20:49