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 comentarios

Jan
Jan el 22 de Nov. de 2018
Editada: Jan el 22 de Nov. de 2018
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.
Mr. 206
Mr. 206 el 22 de Nov. de 2018
Thanks.
I thought vectoring will make my code faster.

Iniciar sesión para comentar.

Respuestas (1)

madhan ravi
madhan ravi el 22 de Nov. de 2018

0 votos

You can preallocate output before the loop but to store the output your first way is the only way.

1 comentario

Mr. 206
Mr. 206 el 22 de Nov. de 2018
Editada: madhan ravi el 22 de Nov. de 2018
Thanks.
I will do so .

Iniciar sesión para comentar.

Categorías

Más información sobre Loops and Conditional Statements en Centro de ayuda y File Exchange.

Etiquetas

Preguntada:

el 22 de Nov. de 2018

Editada:

el 22 de Nov. de 2018

Community Treasure Hunt

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

Start Hunting!

Translated by