MATLAB: Find min value of 1st layer of a multidimensional matrix

matrixmax

I want to find the min value of the 1st layer in an n layer matrix and I want to get the indices too. I tried messing around with min() and ind2sub() but I could not get what I was looking for. How would I got about doing this? An example matrix is seen below.
N = randi([1,500],45,45)
N(:,:,2) = randi([5,200], 45, 45)
N(:,:,3) = randi([1,50], 45, 45)

Best Answer

Here's one way:
% Set seed for reproducibility
rng 'default'
% Your array
N = rand(4,3,2);
[m,n,~] = size(N);
% Find the minimum value in the first slice.
[minValue minLinearIndex] = min(reshape(N(:,:,1),[m*n,1]));
% Convert the linear index to subscripts
[minrow mincol] = ind2sub([m,n],minLinearIndex);