Not able to excecute the code

15 visualizzazioni (ultimi 30 giorni)
Rajeev Kumar
Rajeev Kumar il 21 Giu 2019
I am trying to execute following codes :
rows={'A','B'};
data = cell(0,5);
T = cell2table(data);
T.Properties.RowNames = rows;
Matlab is throwing an error :The RowNames property must contain one name for each row in the table.
Can anybody comment if I am missing anything? I will appreciate any help.

Risposta accettata

Aravind Ravikumar
Aravind Ravikumar il 21 Giu 2019
Hey, cell(0,5) returns a 0x5 empty cell array. That is why row number isn't matching with rows variable. You should use You can simply create a cell array using the command,
data = {0,5}
Also, in this example data is a 1x2 cell array. Hence it has only one row. To change that row name, you could do something like,
rows={'A'};
data = {0,5};
T = cell2table(data);
T.Properties.RowNames = rows;
For creating a 2x1 cell array, you'll have to use
rows={'A','B'};
data = {0;5};
T = cell2table(data);
T.Properties.RowNames = rows;
  5 Commenti
Rajeev Kumar
Rajeev Kumar il 4 Lug 2019
Thanks Walte size. Here is the result:
size(table)=0x3
h=table.Properties.VariableNames
h =
1×3 cell array
{'tab1'} {'t'ab2} {'tab3'}
Could you please comment on this?
Walter Roberson
Walter Roberson il 4 Lug 2019
With 0 rows you must have 0 row names.

Accedi per commentare.

Più risposte (1)

Akshay Malav
Akshay Malav il 21 Giu 2019
Modificato: Akshay Malav il 21 Giu 2019
First change the number of rows from 0 to 1 and correspondingly the rows array should contain only 1 element either 'A' or 'B'. Run it , it will work fine
Here is the code
rows={'A'};
data = cell(1,5);
T = cell2table(data);
T.Properties.RowNames = rows;
  1 Commento
Walter Roberson
Walter Roberson il 21 Giu 2019
Right. You can only have a row name for a row that exists. You cannot put in placeholder row names for rows to be added later.

Accedi per commentare.

Categorie

Scopri di più su Tables in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by