How do I assign result array of a loop to a variable name?

2 visualizaciones (últimos 30 días)
I have a for loop which gives an one dimensional array in each iteration. (i.e. [1;2;3;4]) But they could be different in length. The example code is given below.
feature = ["intensityofcost1","intensityofcost2","intensityofcost3", ...
"rewardconcentration1","rewardconcentration2","rewardconcentration3", ...
"rewardconcentration4"];
uniqueFeature = {'uniqueCost1','uniqueCost2','uniqueCost3', ...
'uniqueReward1','uniqueReward2','uniqueReward3','uniqueReward4'};
for ii = 1:numel(feature)
% some code
uniqueFeature{ii} = unique(noNaNcleanedData);
end
I want to assign the result of each iteration to the variable names in 'uniqueFeature' cell array. How can I do it?

Respuesta aceptada

Steven Lord
Steven Lord el 28 de Jul. de 2022
Can you dynamically create variables with numbered names like uniqueCost1, uniqueCost2, uniqueCost3, etc.? Yes.
Should you do this? The general consensus is no. That Answers post explains why this is generally discouraged and offers several alternative approaches.
  5 comentarios
Struggling in MATLAB
Struggling in MATLAB el 29 de Jul. de 2022
I think it would increase the readability of my script. Else I always have to refer back to the array name container uniqueFeature to see which variable I am dealing with.
Besides, I am generally curious about how people do it.
Struggling in MATLAB
Struggling in MATLAB el 29 de Jul. de 2022
Got it. Thank you very much!

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Loops and Conditional Statements en Help Center y File Exchange.

Etiquetas

Productos


Versión

R2022a

Community Treasure Hunt

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

Start Hunting!

Translated by