Use a simple array for table row names?

How do I use a simple array (ex. a = [1:1:5]) for the names of row variables in a table?
I find all the different data types in MATLAB to be extremely confusing and poorly documented, and as a result have spend an hour trying to answer this simple question. I know that it involves some conversion of the array to both a cell array AND and character vector, but can't figure it out. Thanks.

 Accepted Answer

Matt J
Matt J on 7 Jan 2018
Edited: Matt J on 7 Jan 2018
For example,
rownames=arrayfun(@num2str,1:5,'uni',0);
T=array2table(eye(5)); %fake table
>> T.Properties.RowNames=rownames
T =
5×5 table
Var1 Var2 Var3 Var4 Var5
____ ____ ____ ____ ____
1 1 0 0 0 0
2 0 1 0 0 0
3 0 0 1 0 0
4 0 0 0 1 0
5 0 0 0 0 1

1 Comment

Perfect! arrayfun was what i was missing... thanks Matt.

Sign in to comment.

More Answers (0)

Categories

Asked:

on 7 Jan 2018

Commented:

on 7 Jan 2018

Community Treasure Hunt

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

Start Hunting!