Getting the value of variable from its name

I have variable name saved as a string in an array. I want to read the value of the variable into another array. Is there a function in matla which takes variable name as input and returns the value of that variable.

Answers (1)

eval will do this, but see the link posted by Stephen explaining all the reasons you should avoid using eval: https://www.mathworks.com/matlabcentral/answers/304528-tutorial-why-variables-should-not-be-named-dynamically-eval
For example:
a = 1:10;
varName = 'a';
b = eval(varName);

1 Comment

"see the link posted by Stephen explaining all the reasons you should avoid using eval:"
Correction: "see the link by Stephen which explains the main reasons why you should avoid forcing meta-data (e.g. pseudo-indices, test parameter values, etc.) into variable names or fieldnames."

Sign in to comment.

Categories

Find more on Loops and Conditional Statements in Help Center and File Exchange

Asked:

on 4 Jun 2021

Commented:

on 2 Nov 2023

Community Treasure Hunt

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

Start Hunting!