Converting cell to struct with field names

1 Ansicht (letzte 30 Tage)
R J
R J am 8 Jul. 2015
Bearbeitet: R J am 8 Jul. 2015
Hi all,
I have a 12x5 cell that I am trying to convert to a structure. I am trying to use the cell2struct function but to no avail.
Right now I have:
structArray = cell2struct(temp, {'a' 'b' 'c' 'd' 'e'}, 5)
Thank you for your help!
Edit1: The first cell in temp{} is a 1x29 cell and the next 4 columns (2:5) are string values
Edit2: The error I get is "Number of field names must match number of fields in new structure."

Akzeptierte Antwort

James Tursa
James Tursa am 8 Jul. 2015
Bearbeitet: James Tursa am 8 Jul. 2015
The 3rd argument is the dimension of the cell array to use for the fields, not the number of fields. You've got 5 field names, so I assume you mean to use the 2nd dimension of your 12x5 cell array for the fields. E.g.,
structArray = cell2struct(temp, {'a' 'b' 'c' 'd' 'e'}, 2)
  2 Kommentare
Stephen23
Stephen23 am 8 Jul. 2015
Indeed, this also described in the documentation:
R J
R J am 8 Jul. 2015
Bearbeitet: R J am 8 Jul. 2015
Thank you again James. Much appreciated.
I also just came across this solution as well searching the answers:
names = {'a', 'b', 'c', 'd', 'e'}
tempStruc = cell2struct(temp,names,2);

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Cell Arrays finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by