reference a structure array

42 visualizaciones (últimos 30 días)
Duaa
Duaa el 12 de Oct. de 2011
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??

Respuesta aceptada

Laura Proctor
Laura Proctor el 12 de Oct. de 2011
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
  1 comentario
Duaa
Duaa el 12 de Oct. de 2011
Thank you for your help

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Structures en Help Center y File Exchange.

Etiquetas

Productos

Community Treasure Hunt

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

Start Hunting!

Translated by