Clear Filters
Clear Filters

How to save the variables inside for loop

46 views (last 30 days)
I am executing loop for k=1,2,5,6,.......100 E=produces column vector of different size; end
I need to save 'E' for each value of k;
Thanks Any help is appreciated!

Accepted Answer

jgg
jgg on 25 Jan 2016
Edited: jgg on 25 Jan 2016
The easiest way to probably to just use a cell array.
Es = cell(100,1)
for i = 1:100 %your loop
% do stuff; generate E
Es{i} = E
end
I'm assuming you already have the loop working, you're just trying to save the output. This will be stored in Es.
  3 Comments
jgg
jgg on 25 Jan 2016
It would probably be difficult; all your vectors are of different sizes, which means you can't just stack them into a big matrix. If you knew they had a max size M then you could do this:
Es = NaN(100,M);
for i = 1:100 %your loop
%do stuff, generate E
Es(1:length(E)) = E;
end
This will store E in the first elements of Es for each row; the rest will be NaN values. The problem is that this is pretty inefficient in terms of memory, but it might work. You also need to know M which is difficult.

Sign in to comment.

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Products

Community Treasure Hunt

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

Start Hunting!