Adding a Column to a Table
1,606 次查看(过去 30 天)
显示 更早的评论
Hello everyone, I've just started out with Matlab for uni and am trying to add a column to a table. I ran into the following error message
Error using .
To assign to or create a variable in a table, the number of rows must match the height of the table.
My code is written below:
%Creates a table called 'tab' using the data in the coronavirus-cases.csv
%file.
tab = readtable("coronavirus-cases.csv");
%Creates a row of zeros with the same height as tab.
newTabCol = zeros(height(tab), 1);
%Adds the column and titles it "Seven Day Average".
tab.newTabCol = "Seven Day Average";
What confuses me is that the height of newTabCol matches tab. Both have 153772 rows:
I'm sure I'm missing something basic but any help would be appreciated.
Kind regards,
John
0 个评论
采纳的回答
Dyuman Joshi
2023-10-6
The variable name/title should be used after using the dot notation inside parenthesis and the data to append should be on the right side of the equation.
%Creates a row of zeros with the same height as tab.
newTabCol = zeros(height(tab), 1);
%Adds the column and titles it "Seven Day Average".
tab.("Seven Day Average") = newTabCol;
2 个评论
更多回答(1 个)
Image Analyst
2023-10-6
To add a column to a table, use addvars
help addvars
2 个评论
Alessandro Livi
about 6 hours 前
编辑:Walter Roberson
about 3 hours 前
I read all that, tried it and it didn't work (or I hadn't rotated the vector yet with ' )
What did work is
A = zeros([1 size(app.StimInputTable.Data,1)]);
app.StimInputTable.Data.Var4 = A';
I suppose that
A = zeros([1 size(app.StimInputTable.Data,1)]);
app.StimInputTable.Data = ADDVARS(app.StimInputTable.Data, A');
might also work if I get all the app.'s and .Data's and A' in the right place but noone explains about rotating the vector to a column in the Help or in answers copied from Help.
Walter Roberson
about 3 hours 前
T = array2table([10 9 8])
T.GHI = [1 2 3 4]
The key here is that the variable to be added might legitimately have multiple columns, so the process of adding a variable cannot automatically flip vectors -- it might be the wrong thing to do.
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!