How to find the maximum length in a structure of vectors?

20 次查看(过去 30 天)
I have a struct, fem. One of its field is a cell (fem.Element) and I want to find the maximum length of fem.Element.
Thanks in advance, André

采纳的回答

AXL
AXL 2017-11-12
I solved using this: max(cellfun(@length,fem.Element);

更多回答(1 个)

Precise Simulation
Precise Simulation 2017-11-12
If by "maximum length" you mean the number of struct entries, then you can just use one of the standard length, numel, or size commands
length(fem)
numel(fem)
size(fem)
If you mean the maximum value in each struct entry you could use something like
mx_all = cellfun(@max,struct2cell(fem))
mx = max(mx_all(:))
  2 个评论
AXL
AXL 2017-11-12
编辑:AXL 2017-11-12
I mean the maximum length in one struct field. I can use this because not all the fields are struct and I get the message:
% Non-scalar in Uniform output, at index 3, output 1. Set 'UniformOutput' to false.
AXL
AXL 2017-11-12
I solved it using this: max(cellfun(@length,fem.Element);
But really thanks! I'm not used to work with cells.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Structures 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by