[問題] 迴圈與判斷已回收
以下的程式是目前小弟完成的部份
clc
clear all
%%%%%%%%%%---------start---------------%%%%%%%%%%%%%%%%%%%
load a.T2
load b.D2
b(:,3) = a(:,2);
c = length(a);
for i = 1:1:c
if i == c+1
break
elseif (b(i,2) ~= b(i+1,2)) && n>=3;
d1 = b(i-1,2);
d2 = b(i-2,2);
d3 = b(i-3,2);
d = (d1+d2+d3)/3;
n = 0;
elseif (b(i,2) ~= b(i+1,2)) && n<=2;
d1 = b(i-1,2);
d2 = b(i-2,2);
d = (d1+d2)/2;
n = 0;
else (b(i,2) ~= b(i+1,2)) && n<=1;
d = b(i-1,2);
n = 0;
end
n = n+1
end
假設我的 a 與 b 分別如下
a = 1 2 b = 1 2
2 2 2 2
3 2 3 2
4 3 4 5
5 3 5 5
6 1 6 5
7 2 7 6
8 2 8 7
9 1 9 8
10 1 10 9
最左側的是一樣的可以不必理他, 主要是看第二行, a 是當b的索引, a的前三個是2
第四個是3, 也就是判斷最後一個數字與下一個不同時, 我要將b中對應的最後三個做平均
如果只有二個就做二個的平均, 只有一個就保留. 現在小弟想不出來要計算出現相同次數
的變數要放在那裡, 以及當i值算到第10時,會與第11筆資料比對時要怎麼直接跳到算最後
三筆的值或者保留該數值的算式下. 為了能知道我是在那裡做了運算, 我也必須有一個索
引, 也就是說, 我在"2"的位置算出值, 我要在他的旁也同時顯示. 我不知道要在那一段插
入判斷,請大大幫忙, 謝謝
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.125.31.64
→
07/01 08:43, , 1F
07/01 08:43, 1F
→
07/01 08:46, , 2F
07/01 08:46, 2F
→
07/01 08:54, , 3F
07/01 08:54, 3F
→
07/01 08:56, , 4F
07/01 08:56, 4F
→
07/01 08:57, , 5F
07/01 08:57, 5F
MATLAB 近期熱門文章
PTT數位生活區 即時熱門文章