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?

 Akzeptierte Antwort

Bjorn Gustavsson
Bjorn Gustavsson am 18 Dez. 2013

0 Stimmen

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 Kommentar

Kushagra
Kushagra am 19 Dez. 2013
I was using an additional dot to access elements of field.... Thanks

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Produkte

Community Treasure Hunt

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

Start Hunting!

Translated by