How to remove a row from the table?

3 vues (au cours des 30 derniers jours)
Aswin Sandirakumaran
Aswin Sandirakumaran le 27 Juin 2018
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 commentaire
Image Analyst
Image Analyst le 27 Juin 2018
This code produces a table of tables:
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.

Connectez-vous pour commenter.

Réponse acceptée

Adam Danz
Adam Danz le 27 Juin 2018
Modifié(e) : Adam Danz le 27 Juin 2018
To remove row 1 from the table 'Application' :
Application(1,:) = []
  3 commentaires
Adam Danz
Adam Danz le 27 Juin 2018
Modifié(e) : Adam Danz le 27 Juin 2018
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) = {''};
Aswin Sandirakumaran
Aswin Sandirakumaran le 27 Juin 2018
How to just print the Name of the row in the table??
Just to print say s_1 when s_1 is the first row in the table

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Tables dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by