How to access struct fields within cell array?

Hello there, I have a 50*1 cell array and every cell-element is a 100*1 cell-array, whose elements are from type struct. And I want to have the field values. I have tried something like this:
X = cell(length, 1)
for i
for j
X{i}{j} = Bigcellarray{i}{j}.field
end
end
This does not work, has anybody an idea? Greetings!

2 个评论

This is unclear. Are you trying to build such a cell array from variables you already have? If so, can you provide us exactly with what variables you have (class and size) to start with?
To write a code for that.....we should know the structure perfect. Attach your data as .mat file, so that you can get a help.

请先登录,再进行评论。

回答(2 个)

Then, how about the following? After running this, A is 100-by-50 numeric array where A(i,j) = Bigcellarray{i}{j}.field
C = [Bigcellarray{:}];
A = cellfun(@(x) x.field, C)';
N = length(Bigcellarray);
X = cell(N, 1);
for i = 1 : N
for j = 1 : length(Bigcellarray{i})
X{i}{j} = Bigcellarray{i}{j}.field
end
end

类别

帮助中心File Exchange 中查找有关 Structures 的更多信息

提问:

2017-7-30

Community Treasure Hunt

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

Start Hunting!

Translated by