Use a simple array for table row names?

2 views (last 30 days)
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
qmnjb007
qmnjb007 on 7 Jan 2018
Perfect! arrayfun was what i was missing... thanks Matt.

Sign in to comment.

More Answers (0)

Categories

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

Community Treasure Hunt

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

Start Hunting!