Opening multiple fields within the same level of a structure

I have a nested structure which after a couple of levels, reaches a level with each month of the year. Within each of these months I have 8 fields which contain 16x1 arrays of the type double. Is there a command I can use to open all 8 of these arrays in a month and have Matlab display them, rather than having to open them one by one?
Thank you

 Accepted Answer

Hi,
to access the fields of a structure you need to use fieldnames .
data.array1 = rand(16,1);
% ...
data.array8 = rand(16,1)+10;
allarray = fieldnames(data);
for i = 1:length(allarray)
% display array :
fprintf('%s\n',allarray{i})
disp(data.(allarray{i}))
end
and in case of a structure in a structure, you can do a for loop for each level

More Answers (0)

Categories

Asked:

on 13 Oct 2014

Answered:

on 13 Oct 2014

Community Treasure Hunt

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

Start Hunting!