How to locate the index of cell array that has highest element value?

3 views (last 30 days)
Hi All
I have a main cell array (matrix) that contains several cell arrays. Is it possible to locate the index of cell array that has highest third element. In other word want to know whcih cell array has the highest value locaed in third element.
Best regards
Aziz

Answers (1)

Sulaymon Eshkabilov
Sulaymon Eshkabilov on 4 Aug 2021
Edited: Sulaymon Eshkabilov on 4 Aug 2021
You can do it with sort() and by manipulating your main cell array a little bit. See this plain example:
A{1,1}=1; A{2,1}=5; A{3,1}=2; A{4,1}=13; A{5,1}=7; A{6,1}=1i; A{7,1}=0;
B={A}
[Bsorted, idx] = sort(cell2mat(B{:}), 'descend')
IDX_max=idx(1) % Max value's INDEX
B_max = B{1}(IDX_max)
You may also consider this matlab script published in MATLAB central: https://www.mathworks.com/matlabcentral/fileexchange/13770-sorting-a-cell-array
  1 Comment
Abdulaziz Abutunis
Abdulaziz Abutunis on 8 Aug 2021
Thank you Sulaymon,
I was able to handle it with regular matrx. Though you suggestion seems valid
Regards
Aziz

Sign in to comment.

Categories

Find more on Matrices and Arrays in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!