Effacer les filtres
Effacer les filtres

Looping over table variable to access structure

3 vues (au cours des 30 derniers jours)
roblocks
roblocks le 19 Mai 2016
Commenté : roblocks le 19 Mai 2016
Dear All,
Suppose you have a table and structure of the following format
A code size
obs1 an 10
obs2 bg 8
obs3 cf 5
and a structure:
structurename.an
sturcturename.ag
sturcturename.cf
containing some stuff. Assume code is unique and any codes in the table are also part of the structure. I would now like to access the first n structure variables by size defined in table. So for example the first largest to I want matlab to take "an" and "ag" and then compute something with it. What is the best way to loop through tables?
Thanks in advance!
Best

Réponse acceptée

Guillaume
Guillaume le 19 Mai 2016
1. Sort your table by decreasing size:
tsorted = sortrows(t, 'size', 'descend');
2. Simply iterate over the rows and use dynamic field names to access your structure:
for row = 1:n
val = structurename.(sortedt{row, 'size'});
%do something with val
end

Plus de réponses (0)

Catégories

En savoir plus sur Structures dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by