I have a structure which contains various arrays. I want to directly access a particular element of an array. My structure is as follows: s =
a: [1 2 3 4 5]
b: [1 2 3 4 5]
.
.
Now I want to access elements of these arrays(a,b...) in loop. So how can I access that. I am able to access complete array using below commands:
fields = fieldnames(s);
for i=1:length(fields)
s.(fields{i});
end
But I am not able to access a particular element directly in one command. How can I do that?

 Réponse acceptée

Bjorn Gustavsson
Bjorn Gustavsson le 18 Déc 2013

0 votes

Simpler than you think I guess:
ElementsOfInterest = [2 5 1];
for i=1:length(fields)
s.(fields{i})(ElementsOfInterest(i));
end
Works for me.
HTH

1 commentaire

Kushagra
Kushagra le 19 Déc 2013
I was using an additional dot to access elements of field.... Thanks

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

Produits

Community Treasure Hunt

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

Start Hunting!

Translated by