Error when creating table

I am trying to create this table and i keep getting this error. Why? and how do I fix it?
clc;clear;
startAngle = [1,2];
middleAngle = [1,2];
endAngle = [1,2];
tableHeader = ["Start","Transition","End"];
putterNames = ["Putter1 :","Putter 2:"];
a = table(startAngle,middleAngle,endAngle,'RowNames', putterNames, 'VariableNames', tableHeader);
Error using table
The RowNames property must contain one name for each row in the table.
display(a);

 Accepted Answer

If you try creating the table without the RowNames you'll see that your table actually has one row, and each element of the table is a 1-by-2 vector:
clc;clear;
startAngle = [1,2];
middleAngle = [1,2];
endAngle = [1,2];
tableHeader = ["Start","Transition","End"];
putterNames = ["Putter1 :","Putter 2:"];
a = table(startAngle,middleAngle,endAngle, 'VariableNames', tableHeader)
a = 1×3 table
Start Transition End ______ __________ ______ 1 2 1 2 1 2
If you make those variables into column vectors when making the table, then specifying RowNames works:
a = table(startAngle(:),middleAngle(:),endAngle(:),'RowNames', putterNames, 'VariableNames', tableHeader)
a = 2×3 table
Start Transition End _____ __________ ___ Putter1 : 1 1 1 Putter 2: 2 2 2

More Answers (0)

Products

Asked:

on 17 Jun 2022

Answered:

on 17 Jun 2022

Community Treasure Hunt

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

Start Hunting!