reference a structure array

Hello
My question is simple.
can I reference a structure array; i.e if I have this code
s = struct('f1', [1 2; 3 4], 'f2', [5 6; 7 8]);
if I have for loop to find do some operation on the matrices stored in f1 & f2 like the mean for example. how can I index f1 & f2 in structure s so each time I can call one in the loop??

 采纳的回答

You can use the fieldnames function and then use parentheses around the fieldname when called with a variable, see the code below:
s = struct('f1', [1 2; 3 4], 'f2', [5 6; 7 8]);
fn = fieldnames(s)
for idx = 1:length(fn)
mv(idx) = mean(s.(fn{idx})(:));
end

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Structures 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by