Python Argmin function in MATLAB ( Finding an indexing in AxBxC array in specific colomn)

9 views (last 30 days)
I have an matrix as dimensions 11x360x1360. I have to find the minimum indexes in each (11) column. In python i can do this operation with np.argmin(abs(x),axis = 0)). How can i do that in MATLAB? I have to search minimum index in 1x360x1360,2x360x1360 and my output should be 360x1360 and values in output should be 1,2,3,4,5,6,7,8,9,10,11('11' values).

Answers (1)

Aditya Patil
Aditya Patil on 22 Sep 2020
You can pass the linear option of the min function when you want to find the index of the minimum over multiple dimensions. Then use the ind2sub function to get subscript indices from the linear one's.
matrix = rand([11,360,1360]);
[value, index] = min(matrix, [], [2, 3], 'linear');
[I1, I2, I3] = ind2sub(size(matrix), index);
  9 Comments
Emre Can Ertekin
Emre Can Ertekin on 25 Sep 2020
this is not work for me, A(1,:,:) is 1x360x1360 array i need 360x1360 and output of A(1, : , :) is 1 2 3 4 5 6 7 8 9 10 11; i need one number. like 1 or 7. I try to made it in for loop thank you anyway.

Sign in to comment.

Products


Release

R2018a

Community Treasure Hunt

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

Start Hunting!