2011-10-24 9 views
7

decir que tengo una serie de células:campos Struct de matriz de células

my_cell_array = {'Jimmy', 'Timothy', 'Charles', ...} 

¿Hay una manera compacta de definir un único struct que tiene los elementos de my_cell_array como nombres de campo? Los miembros de la nueva estructura pueden contener celdas vacías o matrices vacías.

Respuesta

7

cell2struct es probablemente lo que necesita.

my_cell_array = {'Jimmy', 'Timothy', 'Charles'} 
s = cell2struct(cell(size(my_cell_array)), my_cell_array, 2) 
s = 

     Jimmy: [] 
    Timothy: [] 
    Charles: [] 
+0

miré en él, pero 'cell2struct' parece estar diseñado para construir' struct' ** * matrices * desde 'celdas ** matrices **. Lo que quiero es una sola 'struct' con nombres de campo de la matriz' cell'. Dicho esto, probablemente tengas razón, probablemente haya una forma de hacerlo con 'cell2struct'. Lo investigaré más a fondo. –

+0

He editado, ¿eso es lo que quieres? –

+0

Lo tengo. ¡Si gracias! Lo aceptaré tan pronto como me permita hacerlo. –

0

Trate de usar esta declaración:

cell2struct(cell(size(my_cell_array)),my_cell_array,2) 

Devuelve:

ans = 

     Jimmy: [] 
    Timothy: [] 
    Charles: [] 
Cuestiones relacionadas