Is there a way to create and preallocate for tables with a large number of variables (can all be of same type e.g. double) without having to specify each variable independently?

27 views (last 30 days)
I want to create tables with a large number of variables (i.e. many columns of data all of type double) so using for example
sz =[1000,1000]; vartype = {'double','double',....,'double'}; T = table{'Size',sz,'VariableTypes',vartype};
is not reasonable. I assume there's an easier way to do this (i.e. without having to write 'double' thousands of times), but haven't been able to find it. Any suggestions would be appreciated.

Accepted Answer

Matt J
Matt J on 27 Sep 2018
Edited: Matt J on 27 Sep 2018
sz =[1000,1000];
vartype = repmat({'double'},1,sz(2)) ;
T = table('Size',sz,'VariableTypes',vartype);

More Answers (1)

Matt J
Matt J on 27 Sep 2018
Edited: Matt J on 27 Sep 2018
Another way,
T=array2table(rand(sz));

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!