Specifying elements of a structure array that have different fields
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hello -
I'm using a structure array to describe a set of particles that can have very different properties. I've found that by creating a structure field for each element of the array, I can then add specific fields that may not be shared by all members of the array:
particle(1).type = 'human';
particle(1).properties.name = 'Barney';
particle(1).properties.gender = 'm';
particle(1).properties.weight = 190.0;
particle(2).type = 'vehicle';
particle(2).properties.model = 'Camry';
particle(2).properties.weight = 3000.0;
particle(2).properties.length = 14.0;
Is this permissible to do? Thanks.
0 commentaires
Réponses (1)
José-Luis
le 5 Juin 2014
Modifié(e) : José-Luis
le 5 Juin 2014
To get a logical index into all 'human':
humanIdx = cellfun(@(x) strcmp('human',x),{particle(:).type})
Please accept an answer if it helped you.
2 commentaires
José-Luis
le 5 Juin 2014
Yes you can. Accessing stuff will lead to tricky syntax, but is doable as shown above.
What is your ultimate purpose? Build a database? If so, then Matlab is really not the right tool for the job.
Voir également
Catégories
En savoir plus sur Structures dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!