How to create a variable from cell array contents?

11 views (last 30 days)
I have a cell Array vector as attached (length may vary). It contains variable names.
mycell =
5×1 cell array
{'x' }
{'y' }
{'var1'}
{'var2'}
{'var3'}
How to create a new variable as follows?
out = [x;y;var1;var2;var3];
  2 Comments
Stephen23
Stephen23 on 7 Jun 2018
Edited: Stephen23 on 7 Jun 2018
This approach will force you into writing slow, complex, buggy code. Read this to know why:
Rather than accessing variable names in the workspace, you should revise your concept and use simpler, more efficient, and more robust methods, e.g. indexing, structure+fieldnames, table+variables, etc.
Akbar
Akbar on 8 Jun 2018
Edited: Akbar on 8 Jun 2018
Thank you for advice Stephen. I think I will go with tables then.

Sign in to comment.

Accepted Answer

Nikolai Jakuba
Nikolai Jakuba on 18 Jun 2018
You can use struct:
for idx_cell = 1:size(mycell,1) out.(mycell{idx_cell})={}; end

More Answers (0)

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Tags

Products


Release

R2017b

Community Treasure Hunt

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

Start Hunting!