Name a variable that includes the cell name from a cell vector

1 view (last 30 days)
Hi,
I am trying to assign names to the tables I am creating. I have a 1 by 20 cell vector called "Events" with each cell containing events like "NATO", "G20" etc. Now I need my tables to have names extracted from the cells with extentions like "NATO_a", "NATO_b" etc. I have tried Events(1)_a=table(); but it's not working. How do I extract the cell names and add extensions? Please advise.
  11 Comments
Stephen23
Stephen23 on 2 Jul 2019
Edited: Stephen23 on 2 Jul 2019
@Syeda Amberin: note that putting meta-data into fieldnames will make your code fragile: consider what your code would do if one of the names was 1ABC, or AB@ (i.e. not a valid fieldname). Meta-data is data, and generally it should be stored in a variable, not in a fieldname or variable name.
Your code would be more robust if you just used indexing.

Sign in to comment.

Answers (1)

Syeda Amberin
Syeda Amberin on 26 Mar 2019
I figured a round about.
s1='_a';
s=strcat(Events(1),s1);
Producing:
'Nato_a'
Thanks,

Community Treasure Hunt

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

Start Hunting!