How to vectorize 'for' loop in this code?

My code is like this...
c = 0;
for j = 3: 2 : size(READ,2)
c = c+1;
output(c) = .....
end
I want avoid 'c' and 'for loop' in my code but as you are seeing it is necessary to store the results of loop.
I want it to be like this
j = 3: 2 : size(READ,2)
output = ....
But in this case all the outputs are not stored. I want this thing to make my code faster.

2 个评论

Jan
Jan 2018-11-22
编辑:Jan 2018-11-22
There is no benefit in vectorizing in general. Depending on what is hidden in ".....", a vectorized version can be slower or impossible to create. So please post this very important detail.
Using the index c is nice and efficient, if you pre-allocate the array output.
Thanks.
I thought vectoring will make my code faster.

请先登录,再进行评论。

回答(1 个)

madhan ravi
madhan ravi 2018-11-22
You can preallocate output before the loop but to store the output your first way is the only way.

类别

帮助中心File Exchange 中查找有关 Loops and Conditional Statements 的更多信息

标签

提问:

2018-11-22

编辑:

2018-11-22

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by