array of structures to cell array via comma-separated list
Afficher commentaires plus anciens
Suppose I have the following array of structs:
data(1).f1 = 1;
data(2).f1 = 2;
data(1).f2 = 'foo';
data(2).f2 = 'bar';
And I want to put each struct into one cell of a two-element cell array:
struct_as_cell = arrayfun(@(x) x, data, 'UniformOutput', false);
Is there any easier syntax to do this? I would have hoped that data(:) would generate a comma-separated list of structs so that I could do the following, just as I could if data was a cell array, but it doesn't seem to work:
struct_as_cell = {data(:)};
Cheers
4 commentaires
Azzi Abdelmalek
le 28 Jan 2013
What is the problem with the syntax?
Eric Sampson
le 28 Jan 2013
Cedric
le 28 Jan 2013
Ah! I just learned something from Azzi's answer with num2cell().
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Data Type Conversion dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!