我想寫這樣的代碼爲兩個矩陣:如何找出y中每個數組的平均值,它們在x中具有相同的指數?
x=[1 1 1 2 2 3 3 3 3]';
y=[11 21 31 24 32 33 13 37 3]';
我怎樣才能找出每個組的y個的平均值,即在X相同的指數?
我的算法是這樣的:
If x(1)=x(2) counter1=1 sum1=y(1)+y(2)
x(2)=x(3) counter1=2 sum1=sum+y(3) Define newx1=x(1) newy1=sum1/counter1
x(3)<>x(4)
x(4)=x(5) counter2=1 sum2=y(4)+y(3) Define newx2=x(4) newy2=sum2/counter2
x(5)<>x(6)
x(6)=x(7) counter3=1 sum3=y(6)+y(7)
x(7)=x(8) counter3=2 sum3=sum+y(8)
x(8)=x(9) counter3=3 sum3=sum+y(9) Define newx1=x(6) newy3=sum3/counter3
我的問題就在這裏被使用在一個循環中兩個以上的計數器。也許,我應該寫類似:
s=1:8
for k=1:9
if x(k)=x(k+s);
else
s=s+1;
end
end
沒有工作:( 我會greatfull任何幫助或建議
這對我毫無意義。你能否澄清你想要做什麼?另外,你知道Matlab有一個高度優化的「平均」函數,對吧? – PengOne 2011-12-14 19:06:01