Is it possible to link an str answer with an existing variable?

1 visualización (últimos 30 días)
I have 26 variables (one for each letter) which each contain a different matrix. After this I have a for loop that gives an output of a single letter. I want to link the variables and for loop in some way, so that if the loop gives off the letter 'a' it will output the matrix linked to the variable a instead of just the letter. Is this possible? And if it is how would it be accomplished?

Respuesta aceptada

Image Analyst
Image Analyst el 13 de Nov. de 2017
Use a switch statement or a multiple if statement, e.g.
switch letter
case 'a'
theMatrix = a;
case 'b'
theMatrix = b;
etc.
Now theMatrix will be one of those 26 other matrices according to what letter is in the 'letter' variable.

Más respuestas (1)

Steven Lord
Steven Lord el 13 de Nov. de 2017
Use a struct array and dynamic field names or getfield.
S = struct('a', [1 2 3], 'b', [4 5 6], 'c', [7 8 9]);
f = 'b';
x = S.(f) % will contain [4 5 6]
y = getfield(S, f) % will also contain [4 5 6]

Categorías

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

Community Treasure Hunt

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

Start Hunting!

Translated by