![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/189953/image.png)
How to remove a row from the table?
9 次查看(过去 30 天)
显示 更早的评论
Gv = graph({'s1' 's_1' 's2' 's_2' },{'s2' 's_2','s3' 's_3'});
figure(1)
hold on
Gv.Nodes.Availability = {'null','null','null','null','null','null'}';
Gv.Nodes.Memory = [8,6,7,8,6,7]';
%Gv.Nodes.Bandwidth = [3,2,3,2,3,2]';
title('Graph representing Services & VLs');
plot(Gv);
Application = table(Gv.Nodes); % table containing the info of apps
disp(Application);
hold off
Output: Gives me a table with Name, Availability and Memory
Var1
Name Availability Memory
_______________________________
's1' 'null' 8
's2' 'null' 6
's_1' 'null' 7
's_2' 'null' 8
's3' 'null' 6
's_3' 'null' 7
How to Remove a row from the table: say how to remove s1 from the existing table?
1 个评论
Image Analyst
2018-6-27
This code produces a table of tables:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/189953/image.png)
and each of the 6 tables has only one row.
I don't know how to answer you. Perhaps you want to reword your question, or your code.
采纳的回答
Adam Danz
2018-6-27
编辑:Adam Danz
2018-6-27
To remove row 1 from the table 'Application' :
Application(1,:) = []
3 个评论
Adam Danz
2018-6-27
编辑:Adam Danz
2018-6-27
First, I think you should read the comment from @Image Analyst because your table is actually a table of tables. I'm not sure what you want to do with s1 in your table.
If extracting it means isolating the s1 sub-table and storing it in another variable,
s1 = Application(1,1);
If you'd like to extract and store the 's1' from the sub-table,
s1 = Application{1,1}(1,1);
If you're trying to remove the entire s1 sub-table you can use the code I already shared above. If you're trying to remove the 's1' from the sub-table but keep the rest of that 'row' in the main table,
Application{1,1}(1,1) = table({''});
Note, you can only replace the 's1' with an empty string or {[]}. But more importantly, the table-of-tables isn't a good practice. Why do you need to assign Gv.Nodes to a new table in the first place? Why not just rename it?
Application = Gv.Nodes;
Now it's much simpler and cleaner to 'remove' (replace) 's1':
Application(1,1) = {''};
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Logical 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!