How to save the variables inside for loop

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!

 采纳的回答

jgg
jgg 2016-1-25
编辑:jgg 2016-1-25
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 个评论

Thank you very much! Could we do something in vector without cell operation? Thanks
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.

请先登录,再进行评论。

更多回答(0 个)

类别

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

产品

Community Treasure Hunt

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

Start Hunting!

Translated by