如何在Matlab中的向量中保存我的脚本结果?

时间:2014-03-26 14:16:08

标签: matlab loops vector save

我想知道是否有人可以帮我使用MatLab。 有没有办法将这2个值count_zerocount_value保存到2个向量中。

以下代码中感兴趣的部分位于while循环内部,上部与此问题无关。

例如,count_zero的所有值都应保存在向量a=[count_zero count_zero ..]中,并且count_value的所有值都应保存在向量b=[count_value count_value ...]中。

这是我的代码,提前谢谢。

              threeminutesofvideo_Youtube;
              h=[0:0.5:179];
              for idx=1:length(h)
              threshold=h(idx);
              m =find(threshold-1<=x & x<=threshold);
              Y(idx)=sum(y(m));
              end

  count_zero=0;
  count_value=0;
  i=1;

while i<length(Y)

if (Y(i)==0)  
    count_zero=count_zero+1;
    i=i+1;
    while Y(i)==0  && i<length(Y)
    count_zero=count_zero+1;
    i=i+1;
    end

    if i<(length(Y))
    count_zero
    count_zero=0;
    end

    if i==(length(Y))  &&   Y(length(Y))~=0 
                        count_value=1;
                        count_value
                        count_value=0;
    elseif   i==(length(Y))  &&   Y(length(Y))==0             
                        count_zero=count_zero + 1;  
                        count_zero
                        count_zero=0; 
    end


else
    count_value=count_value+1;
    i=i+1;
    while Y(i)~=0 && i<length(Y)
    count_value=count_value+1;
    i=i+1;
    end
    if i<(length(Y))
    count_value
    count_value=0;
    end

    if i==(length(Y))  &&   Y(length(Y))~=0 
                        count_value=count_value+1;
                        count_value
                        count_value=0;
    elseif   i==(length(Y))  &&   Y(length(Y))==0             
                        count_zero=1;  
                        count_zero
                        count_zero=0; 
    end


end

1 个答案:

答案 0 :(得分:1)

据我所知,你想记住一个向量中的值,而不是保存到文件不是吗? 在这种情况下,让我们调用您要记忆的向量如果您事先知道要记住的值的数量,则可以执行此操作

a = NaN*ones(num_of_values,1);
i=1;
while condition
    ...
    a(i) = temp_val;
    i = i+1;
end

如果您不知道先验值的数量:

a=[];
i=1;
while condition
     ...
     a = [a;temp_val];
     i=i+1;
end

我希望有所帮助