Indices of a maximum value in a multidimensional matrix.
44 views (last 30 days)
Show older comments
Aftab Ahmed Khan
on 25 Jul 2016
Commented: Aftab Ahmed Khan
on 25 Jul 2016
Hi, I have a multidimensional matrix of size (100,16,4,10) and i want to calculate all the 4 indices of the max value in it? Any help please.
0 Comments
Accepted Answer
Azzi Abdelmalek
on 25 Jul 2016
Edited: Azzi Abdelmalek
on 25 Jul 2016
a=rand(100,16,4,10); %Example
[max_value,idx]=max(a(:))
[x,y,z,w]=ind2sub(size(a),idx)
If the dimension of a is unknown
a=rand(100,16,4,10);
[max_value,idx]=max(a(:))
x=cell(ndims(a),1)
[x{:}]=ind2sub(size(a),idx)
3 Comments
Thorsten
on 25 Jul 2016
use
b = squeeze(a(25,:,:,:));
and compute x, y, z from b; w is 25 by definition.
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!