How to create a table name using a string variable?

Hi,
How can I use a string variable for a table name?
eg.:
-----------------------------
T = 'ThisShouldBeMyTableName';
VariableNames = {'StartCash','EndDate'};
T = table(input_values.StartCash, input_values.EndDate, 'VariableNames',VariableNames);
-----------------------------
The table which is create should be named "ThisShouldBeMyTableName" not "T".
Thank you

3 Comments

Dynamically accessing variables names is one way that beginners force themselves into writing slow, complex, buggy code that is hard to debug. Read this to know some of the reasons why:
Use indexing. Indexing is simple, neat, and very efficient. Unlike what you are trying to do.
@stephen Can you please elaborate what you mean by indexing? How exactly do I use this indexing?
Mustafa Calcuttawala: please read the material at the link that Stephen posted. It shows a number of different possibilities.

Sign in to comment.

 Accepted Answer

I guess I will just use a cell which I will be store the the variable for the "name that should be" and the table itself too...
Thank you

1 Comment

Or you could create a struct array with one field that contains your table and name that field using either the struct function or dynamic field names.
thefield = 'snowstorm';
data = magic(4);
structOfTables = struct(thefield, data)
structOfTables2.(thefield) = data

Sign in to comment.

Categories

Products

Release

R2017a

Asked:

on 4 Mar 2019

Commented:

on 3 Jun 2020

Community Treasure Hunt

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

Start Hunting!