For loop in a for loop

6 visualizaciones (últimos 30 días)
Jack Tse
Jack Tse el 26 de Mzo. de 2021
Comentada: Jack Tse el 27 de Mzo. de 2021
I am writing a for loop with two data set A and B as the following:
for k = 1:5
for i = 12*k
b = nan(5,10)
for j = 1:10
a = regress(A(i-11:i,j),B(i-11:i,1))
b(k,j) = a(2:end)
end
end
end
I want to store all the result in one data set. However, only data with k = 5, i =5 is store into b. Any idea why this might happen?

Respuesta aceptada

Rik
Rik el 26 de Mzo. de 2021
You are resetting b in your loop, so only the last value of k matters.
And the middle loop isn't a loop, as it is a scalar.
  3 comentarios
Rik
Rik el 27 de Mzo. de 2021
By putting the code that assigns a value to b (without taking into account any existing value of b) outside the loop.
b = nan(5,10);
for k = 1:5
i = 12*k;
for j = 1:10
a = regress(A(i-11:i,j),B(i-11:i,1));
b(k,j) = a(2:end);
end
end
disp(b)
Jack Tse
Jack Tse el 27 de Mzo. de 2021
Thank you so much. It work prefectly fine.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by