Speeding up a loop
이전 댓글 표시
I have made a simple loop that works fine when dealing with small datasets, but takes ages to run when L is 10^6 in size - which unfortunately is the size I need to work with. I'm sure you can tell by the code itself I'm a matlab newbie, so any ideas on how this can be sped up would be very much appreciated. I've read about vectorisation but cannot work out how to vectorise this code.
C=cumsum(S);
L=length(C);
X=zeros(1,L)';
for i=1:L;
if C(i)>min(C(i:L));
X(i);
else
X(i)=1;
end
end
댓글 수: 4
Rick Rosson
2013년 1월 17일
편집: Rick Rosson
2013년 1월 17일
Is S a row vector or a column vector?
Rick Rosson
2013년 1월 17일
편집: Rick Rosson
2013년 1월 17일
What is the goal of this algorithm? What do the variables S and X represent?
Jan
2013년 1월 17일
Is the wanted property of C directly related to the sign of the corresponding element of S?
채택된 답변
추가 답변 (1개)
카테고리
도움말 센터 및 File Exchange에서 Loops and Conditional Statements에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!