How can I put a struct output into the i-th field of a struct on MATLAB?

1 visualización (últimos 30 días)
I have a for loop that runs a simulation 100 times. The results of that simulation go into a struct. For simulation run I have out.S, out.I, out.R and I want to then store the results of each simulation within another struct or array so I can then work out the average output across the 100 simulations.
Anyone any ideas of how to store the output from a for loop using structs? I usually use arrays but this one requires structs.

Respuestas (2)

madhan ravi
madhan ravi el 23 de Nov. de 2018
Editada: madhan ravi el 23 de Nov. de 2018

Luna
Luna el 23 de Nov. de 2018
Editada: Luna el 23 de Nov. de 2018
Hi,
You can do it as follows:
After that you have out.S as an array so you can assign it to any other struct.
for i =1:NumberOfSimulations
out.S(i) = simResult1;
out.I(i) = simResult2;
out.R(i) = simResult3;
end
or you can do below:
Your outputs will be different struct arrays.
for i = 1:NumberOfSimulations
S.result(i) = out.S;
I.result(i) = out.I;
R.result(i) = out.R;
end

Categorías

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

Etiquetas

Productos


Versión

R2018a

Community Treasure Hunt

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

Start Hunting!

Translated by