Opening multiple fields within the same level of a structure

1 Ansicht (letzte 30 Tage)
Gareth Pritchard
Gareth Pritchard am 13 Okt. 2014
Beantwortet: Orion am 13 Okt. 2014
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

Akzeptierte Antwort

Orion
Orion am 13 Okt. 2014
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

Weitere Antworten (0)

Kategorien

Mehr zu Structures finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by