Changing field value for all fields in a struct

21 visualizaciones (últimos 30 días)
MiauMiau
MiauMiau el 3 de Abr. de 2014
Comentada: deejt el 19 de En. de 2021
Hi
Given for instance I have a struct as follows:
s(2) = struct('name','anna','age',18)
s(1) = struct('name','bernd','age',22)
Now I want to change all the names to 'unknown', i.e. as well for s(1) as for s(2). How can I do it (this is just a toy example, I do have a 123 dimensional struct where I do not want to do it one by one). Thanks

Respuesta aceptada

Friedrich
Friedrich el 3 de Abr. de 2014
Hi,
without a loop:
[s.name] = deal('unknown')
  2 comentarios
MiauMiau
MiauMiau el 3 de Abr. de 2014
wow thanks
deejt
deejt el 19 de En. de 2021
How would you proceed if you would only change the name 'anna' to unknown but leave 'bernd'?

Iniciar sesión para comentar.

Más respuestas (1)

Azzi Abdelmalek
Azzi Abdelmalek el 3 de Abr. de 2014
s(2) = struct('name','anna','age',18)
s(1) = struct('name','bernd','age',22)
n=numel(s)
for k=1:n
s(k).name='unknown'
end

Categorías

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

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by