Getting data from a struct array using dynamic field references

2 vues (au cours des 30 derniers jours)
Thomas Koelen
Thomas Koelen le 24 Mar 2015
Modifié(e) : Stephen23 le 24 Mar 2015
I have a struct that looks like this:
data =
GS_L: {411x9 cell}
GS_R: {27x9 cell}
GS_U: {27x9 cell}
GS_D: {27x9 cell}
and a cell that looks like this:
OECFMES =
'GS_L'
'GS_R'
'GS_U'
'GS_D'
But when I try to acces data from the struct I get this error message.
>> data.(OECFMES(1))
Argument to dynamic structure reference must evaluate to a valid field name.
When I type it manually like this:
data.('GS_L')
It does work however
What am I doing wrong?
Kind regards,
Thomas Koelen
  1 commentaire
Stephen23
Stephen23 le 24 Mar 2015
Modifié(e) : Stephen23 le 24 Mar 2015
The difference is simple:
  • () parentheses refer to the cells themselves.
  • {} curly braces refer to the cell contents.
You can read more about indexing cell arrays in the documentation.

Connectez-vous pour commenter.

Réponse acceptée

per isakson
per isakson le 24 Mar 2015
Replace
data.(OECFMES(1))
by
data.(OECFMES{1})

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