My for loop execution is not working.

1 view (last 30 days)
I have a time range (t) going from 1 to 20, and a random collection of data of 20 points (y). I need to have y(1,:) for t(1,:), y(2,:) for t(2,:) and so on. This is what I wrote:
for t=1:1:20.0
a = y(1,:) : y(20,:)
end
But all this executes is the just one value of y (the first or the last, I can't tell because they are the same number). What should I correct?
  2 Comments
Hiskiel Stephanus
Hiskiel Stephanus on 9 Jun 2015
Edited: Hiskiel Stephanus on 9 Jun 2015
I am assuming you are trying to assign values to an "a" matrix. Try making "a" a dynamic array by saying
a(1,t) = y(1,:) : y(20,:)

Sign in to comment.

Accepted Answer

Walter Roberson
Walter Roberson on 7 Jun 2015
for t = 1:20
a = y(t,:);
fprintf('y value #%t was %g\n', t, a); %example of using the data
end
  1 Comment
Prakriti Sardana
Prakriti Sardana on 7 Jun 2015
Edited: Prakriti Sardana on 7 Jun 2015
Hm, thank you very much. This works well for me.
PS: If I happen to use a part of this code in my summer project, I would credit you. :p Hehe.

Sign in to comment.

More Answers (0)

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!