【发布时间】:2014-05-28 13:48:24
【问题描述】:
当我运行我的脚本时,所有的值都会显示出来,但我想要向量中的所有值,我该怎么办?
x=[1 2 3 4 5];
y=[1 2 3 4 5];
xx=[1.2 1.6 1.8 2.4 2.8 3.4 4.9 2.6];
yy=[1.2 1.6 1.8 2.5 2.8 3.3 4.9 2.5];
plot(x,y,'.g',xx,yy,'*b')
for j=1:length(xx)
if xx(j)<x(1)
value=0
elseif xx(j) >x(1) & xx(j)<x(2)
value=1
elseif xx(j) >x(2) & xx(j)<x(3)
value=2
elseif xx(j) >x(3) & xx(j)<x(4)
value=3
elseif xx(j) >x(4) & xx(j)<x(5)
value=4
elseif xx(j) >x(5) & xx(j)<x(6)
value=5
else
value= NaN
end
end
【问题讨论】:
-
使用
value(j)=some_value并尽量避免使用i或j作为迭代器。此外,请考虑使用value = zeros(length(xx),1)进行预分配。另外,请考虑使用numel而不是length。 -
谢谢,但我又有8个答案,我可以把它们都放在同一个向量中,答案不正确=/
-
你想要一个向量作为结果,对吧?循环结束后打印
value。
标签: matlab loops if-statement vector save