array of structures to cell array via comma-separated list
이전 댓글 표시
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
Azzi Abdelmalek
2013년 1월 28일
What is the problem with the syntax?
Eric Sampson
2013년 1월 28일
Cedric
2013년 1월 28일
Ah! I just learned something from Azzi's answer with num2cell().
채택된 답변
추가 답변 (0개)
카테고리
도움말 센터 및 File Exchange에서 Data Type Conversion에 대해 자세히 알아보기
제품
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!