[爆卦]matlab for迴圈儲存陣列是什麼?優點缺點精華區懶人包

為什麼這篇matlab for迴圈儲存陣列鄉民發文收入到精華區:因為在matlab for迴圈儲存陣列這個討論話題中,有許多相關的文章在討論,這篇最有參考價值!作者wolako (￾ N￾N )看板MATLAB標題Re: [問題] 把...


※ 引述《Proe2 (Sorry, I can't be bette)》之銘言:
※ 引述《wolako (￾ N￾N )》之銘言:
: ※ 引述《jinkay ( )》之銘言:
: : 謝謝喔 我大概講的不夠清楚
: : for LoopI=1:10
: : a=....
: : b=....
: : c=....
: : save filename.mat
: : end
: : 因為每次迴圈的變數的值都不一樣
: : 我想要分別存檔
: : 但是我用 "save filename.mat" 只能存第10次迴圈的所有變數
: : 我想知道除了用structure的方式 還有其他方法嗎
: for i=1:10
: ...
: eval(['save filenameNo',num2str(i,'%02d')]);
: end

a = zeros(1,10);
b = zeros(1,10);
c = zeros(1,10);

for i=1:10
a(i) = ....
b(i) = ....
c(i) = ....
end

這樣就可以保留變數值
看是要繼續計算還是要輸出都可以
在迴圈裡面用 eval 好像不太理想


--
為什麼你要問為什麼...為什麼我要聽你問為什麼...
問完為什麼...為什麼你問我為什麼不問為什麼...
為什麼問為什麼...不問為什麼就是回答你為什麼問為什麼..
為什麼又問為什麼...不問為什麼妳為什麼不問為什麼....
妳到底在問什麼...為的又是個為什麼....
再問為什麼就扁到妳問不出為什麼問為什麼!

--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.112.61.85
jimpeng:推!迴圈內做I/O會降低速度,善用陣列才 140.129.25.64 03/15
wolako:前題是變數吃的記憶體不大吧 140.129.65.184 03/15

而且原文最終目的都是要存成檔案,所以總執行時間不會快多少
"善用陣列"的後果很可能吃了很多資源在執行程式
因為這裡的"善用陣列"並不是"善用陣列運算"

另外,未來取出檔案分析時
如果是要分析每一次疊代下的所有變數,則eval應寫在迴圈內才好
反之如果是為了看變數在每次疊代後的變化,則用矩陣儲存法較好

所以怎麼儲存較好還要看目的而定吧
當然,如果程式很小或電腦配備很強
我想執行時間是0.01sec 或0.1sec也就不用太在意了


--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.129.65.184

你可能也想看看

搜尋相關網站