error in using array2table

2 views (last 30 days)
MAWE
MAWE on 22 Aug 2023
Answered: Maksym Tymchenko on 2 Nov 2023
I have two numerical values in an array x and two string values in an array y. In the workspace these are shown as [0, 7.2e-9] and 1X2 string. But when I try build a tavle using array2table as
array2table(x,'VariableNames', y);
I get the error
The VariableNames property must contain one name for each variable in the table.
What does this mean?
  5 Comments
Dyuman Joshi
Dyuman Joshi on 6 Sep 2023
The answer has been deleted.
@Stephen23, I suspect that you have tagged the wrong profile.
This is the profile of the author in discussion - https://in.mathworks.com/matlabcentral/profile/authors/30941256
Stephen23
Stephen23 on 6 Sep 2023
@Dyuman Joshi: thank you for pointing out the wrong profile, now I can't figure out how to "@" the correct one :)

Sign in to comment.

Answers (1)

Maksym Tymchenko
Maksym Tymchenko on 2 Nov 2023
Hi @MAWE,
I was able to create a table successfully using the steps that you described:
x = [0, 7.2e-9];
y = ["var1", "var2"];
array2table(x,'VariableNames', y)
ans = 1×2 table
var1 var2 ____ _______ 0 7.2e-09
I suspect that you were storing either "x" or "y" as a 2x1 array instead, which would trigger the error that you mentioned:
x = [0; 7.2e-9];
y = ["var1", "var2"];
array2table(x,'VariableNames', y)
Error using array2table
The VariableNames property must contain one name for each variable in the table.

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Tags

Products


Release

R2019b

Community Treasure Hunt

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

Start Hunting!