作者popo14777 (草草)
看板MATLAB
標題[討論] 雙重for迴圈 重複問題
時間Sun Jul 19 12:32:05 2015
以下是小弟的程式碼
for repert 1:3 %跑三條不同曲線
for i=1:314 %有314個數據(X軸)
if ....
data=abc; %有包含誤差的公式,data是反應值(y軸)
else
data=aba; %有包含誤差的公式,data是反應值(y軸)
end
total=[total,data]; %314筆資料(1條曲線)都存入total
end
total_all=[total_all,total]; %3條曲線都存入total_all
end
以下是跑出的結果及問題
1.為什麼total資料變942筆(1*942 double),應該要314筆才對
2.為什麼total_all資料變1884筆(1*1884 double),應該要942筆才對
3.為什麼total_all那欄我使用分號無法編譯
以下是想要的結果
1.total資料有314筆(1*314 double)
2.total_all資料有914筆(3*314 double)
再麻煩大大,幫小弟看一下哪邊出問題,謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 59.102.182.143
※ 文章網址: https://webptt.com/m.aspx?n=bbs/MATLAB/M.1437280328.A.41D.html
1F:推 celestialgod: 你total沒有每次repeat存出來以及清空,所以第一次t 07/19 13:01
2F:→ celestialgod: otal跟total_all都是314,第二次total是628跟total_ 07/19 13:01
3F:→ celestialgod: all是314+628=942,第三次就total是942跟total_all 07/19 13:01
4F:→ celestialgod: 是942+942=1884 07/19 13:01
5F:→ celestialgod: ;無法編譯是因為三次total長度都不一樣 07/19 13:02
6F:→ celestialgod: 建議改法是最前面加上total_all=zeros(314, 3); 07/19 13:04
7F:→ celestialgod: 迴圈改成兩層i, j 每次改total_all(i, j)的值 07/19 13:04
8F:→ celestialgod: (preallocate matrix會比較快 07/19 13:05
謝謝大大,原來要把total=[]放在repert 1:3下面就好了
在請問一下,total有跑出完整的一條線,
為什麼我跑出來的圖,total_all沒有三條線呀?X軸值變成1~3,應該要1~314
http://imgur.com/mXTXEQ2
謝謝
※ 編輯: popo14777 (59.102.182.143), 07/19/2015 17:03:37
9F:推 name0625: plot(total_all') 試試看? 07/19 22:17
畫出來了 謝謝!!
請問為什麼要加上這個符號'才能畫出來啊?
※ 編輯: popo14777 (59.102.182.143), 07/19/2015 22:34:36
11F:→ name0625: tzptin 07/20 00:12
12F:→ name0625: Create a 2-D line plot of甴. MATLAB긠plots each matr 07/20 00:13
13F:→ name0625: Create a 2-D line plot of Y. MATLAB plots each 07/20 00:16
14F:→ name0625: matrix column as a separate line. 07/20 00:17