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 comentarios

Stephen23
Stephen23 el 8 de Mzo. de 2019
Editada: Stephen23 el 8 de Mzo. de 2019
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.

Iniciar sesión para comentar.

 Respuesta aceptada

Gabor
Gabor el 4 de Mzo. de 2019
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 comentario

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

Iniciar sesión para comentar.

Categorías

Productos

Versión

R2017a

Preguntada:

el 4 de Mzo. de 2019

Comentada:

el 3 de Jun. de 2020

Community Treasure Hunt

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

Start Hunting!

Translated by