Hi.
I have written an algorithm that computes an array "b" for each ith iteration [i={1,2,3,4}], and I would like to save those arrays in a structure called "A".
How to save those arrays in the structure "A" where its elements are function of "i", i.e, A = {b1, b2,b3, b4} and to get b1 for instance, one would have to type A.b1.
Regards.

2 commentaires

Stephen23
Stephen23 le 16 Mai 2019
Modifié(e) : Stephen23 le 16 Mai 2019
Note that using a non-scalar structure would be more efficient than generating fieldnames.
Indexing is much faster and less buggy than messing around forcing meta-data (i.e. that index) into some fieldnames.
madhan ravi
madhan ravi le 16 Mai 2019
Agree with Stephen.

Connectez-vous pour commenter.

 Réponse acceptée

madhan ravi
madhan ravi le 15 Mai 2019

0 votes

doc cell2struct

3 commentaires

Abderrahmane DADA
Abderrahmane DADA le 16 Mai 2019
Thanks Madhan for your input, but I would like to get is, at each iteration "i", the array should be saved directly and named after the index "i".
Ex: i=1 => b (n x n) is computed then savedin the strcture A as A.b1.
i=2 => b (n x n) is computed then savedin the strcture A as A.b2
You now what I mean now?
madhan ravi
madhan ravi le 16 Mai 2019
Modifié(e) : madhan ravi le 16 Mai 2019
A=struct; % an example
for k=1:5
A.(sprintf('b%d',k))=rand(5);
end
Abderrahmane DADA
Abderrahmane DADA le 16 Mai 2019
Thanks a lot Madhan.
That's exactly what I was looking for.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Produits

Version

R2017a

Community Treasure Hunt

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

Start Hunting!

Translated by