MATLAB Answers

# Minimum and maximum values of a field in a structure array

44 views (last 30 days)
SS on 25 Aug 2019
Edited: SS on 25 Aug 2019
Hi. I have a strcuture array with 10 fields. How can, I find the minumum and maximum values of a particular field f1? I tried uisng min and max commands but, they are giving wrong results.
For example,
The name of the structure array is "Test" (1 x 5000) and the field name is "growth". I want the minimum and maximum of the whole field growth.
Test(1).growth=[1 2 3 4 5 5 6 7 8 9];
Test(2).growth=[10 20 40 67];
..... so on.
I want the maximum and the minimum of the field "growth".

#### 2 Comments

madhan ravi on 25 Aug 2019
Could you illustrate with a short example?
SS on 25 Aug 2019
The name of the structure array is "Test" (1 x 5000) and the field name is "growth". I want the minimum and maximum of the whole field growth.
Test(1).growth=[1 2 3 4 5 5 6 7 8 9];
Test(2).growth=[10 20 40 67];
..... so on.
I want the maximum and the minimum of the whole field growth.

Sign in to comment.

### Accepted Answer

Bruno Luong on 25 Aug 2019
arrayfun(@(s) min(s.f1), s)

#### 3 Comments

SS on 25 Aug 2019
Hi. Thanks for your reply. The name of the structure is "Test" and the field name is "growth". I tried your code as follows: arrayfun(@(s) min(Test.growth), s)
It is giving the following error:
Error using min
Too many input arguments.
Error in @(s)min(Test.growth)
Did, I make any mistake in the syntax?
Bruno Luong on 25 Aug 2019
I recommend you to post your data the next time asking question. You'll save time and us too.
arrayfun(@(s) min(s.growth), Test)
SS on 25 Aug 2019
Thanks, will do it from next time onwards.

Sign in to comment.

### Community Treasure Hunt

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

Start Hunting!