看板 MATLAB 關於我們 聯絡資訊
as title 現在workspace裡頭有好幾筆資料 ex 這邊共26組有依照順序排列 qqq1aa,qqq1bb,qqq1st,qqq1mm qqq2aa,qqq2bb,qqq2st,qqq2mm . . . qqq26aa,qqq26bb,qqq26st,qqq26mm 還有數字不是按順序的41組如 L20aa,L20bb,L20st,L20mm L84aa,L84bb,L84st,L84mm . . . 這種數字名稱非依順序排列的 要如何讓以上這些資料 重新改名後輸入到我要的程式當中執行 例如將 qqq1aa改為a1 qqq1bb改為b1 qqq1st改為c1 qqq1mm改為d1 然後在程式當中執行a1 b1 c1 d1的計算 目前以26那幾組的想法是 for i=1:26 將原名稱改名 改名後執行程式 將此計算後資料儲存 end 但迴圈當中不知道要如何去更改名稱 因為我的名稱是qqq數字加aa、bb、st、mm 如果名稱後面單純只有數字應該很好改 但目前是文字+數字+文字 就不知道該如何下手... 還有那些LXX的數值也不知道要如何以上面那種方式去改 有請各位大大高手們幫忙了!! -- Sent from my Nokia 3310 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 163.25.118.240 ※ 文章網址: https://www.ptt.cc/bbs/MATLAB/M.1427442859.A.0EC.html
celestialgod: http://pastebin.com/DhXgmbz8 03/27 16:29
大大你太神拉~ 不過剛剛我試著執行 可以成功讀取我那些資料沒錯 不過不太懂eval後面的ii-j這意思是? 我想說可不可以將其改名後在我程式當中執行 例如我的程式當中有這4個值aa bb st mm 是要在程式當中執行的 是否可以透過你這方式 將其4個名稱改為aa bb st mm 在程式當中計算完畢 例如 第一次將 qqq1aa名稱改為aa qqq1bb名稱改為bb qqq1st名稱改為st qqq1mm名稱改為mm 計算完後 然後讀取下一組 qqq2aa qqq2bb qqq2st qqq2mm 但不知該從哪邊去改... ※ 編輯: benny5116 (163.25.118.240), 03/27/2015 16:49:38
celestialgod: 可是你第二組要改啥? 03/27 16:55
celestialgod: 現在的方式是根據數字做suffix 03/27 16:55
很抱歉我沒說清楚我的問題 就第一組資料都改為aa bb st mm 然後執行計算我會在得到一組值 (這才是我最後要存起來的 只是我把aa bb st mm拿來在程式中做計算) 然後第二組qqq2aa bb st mm 都一樣改為只有aa bb st mm 這樣的形式,然後一樣帶入程式做計算 在得到一組值存起來這樣依此類推 ※ 編輯: benny5116 (120.126.8.124), 03/27/2015 17:13:06
celestialgod: 這個case跟你一開始要的不太一樣吧... 03/27 17:14
celestialgod: 可能要另外寫吧 03/27 17:15
大大抱歉! 我前面文章說明的可能不太正確 真的很感激您的協助!! ※ 編輯: benny5116 (120.126.8.124), 03/27/2015 17:22:41
celestialgod: 你可能需要用strfind一次找到你要的四個variable 03/27 17:24
celestialgod: 然後再用eval轉成你要的值做計算 03/27 17:24
celestialgod: 或是乾脆把那些值通通丟到一個cell,迴圈做 03/27 17:25
感謝大大的方法 我去看看strfind要怎麼做,謝謝您!! ※ 編輯: benny5116 (120.126.8.124), 03/27/2015 17:32:51 想再請教那些沒按順序的41組也是一樣用strfind就可以了嗎? ※ 編輯: benny5116 (120.126.8.124), 03/27/2015 17:38:05
celestialgod: 對 03/27 17:58