Appending vector in long for-loop
    3 次查看(过去 30 天)
  
       显示 更早的评论
    
I have this loop where x = 62012:
while y < x
    p1  = percentChange(avgLine(y-9), avgLine(y-8));
    p2  = percentChange(avgLine(y-9), avgLine(y-7));
    p3  = percentChange(avgLine(y-9), avgLine(y-6));
    p4  = percentChange(avgLine(y-9), avgLine(y-5));
    p5  = percentChange(avgLine(y-9), avgLine(y-4));
    p6  = percentChange(avgLine(y-9), avgLine(y-3));
    p7  = percentChange(avgLine(y-9), avgLine(y-2));
    p8  = percentChange(avgLine(y-9), avgLine(y-1));
    p9  = percentChange(avgLine(y-9), avgLine(y-0));
    p10 = percentChange(avgLine(y-9), avgLine(y+1));
During this loop, I want to create a vector: [p1 p2 p3 ... p10] and after every iteration, there would be 10 new elements added to the end of it. Can I do this efficiently without using 'append'?
Thanks in advance
0 个评论
回答(1 个)
  Azzi Abdelmalek
      
      
 2013-11-8
        
      编辑:Azzi Abdelmalek
      
      
 2013-11-8
  
      out=zeros(1,62012*10);
n=0;
while y < x
  n=n+1;
  for k=1:10
      out(1,k+(n-1)*10)= percentChange(avgLine(y-9), avgLine(y+k-9));
  end
end
3 个评论
另请参阅
类别
				在 Help Center 和 File Exchange 中查找有关 Biomechanics 的更多信息
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!