find min value of 1st layer of a multidimensional matrix
1 回表示 (過去 30 日間)
古いコメントを表示
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)
0 件のコメント
採用された回答
the cyclist
2017 年 4 月 11 日
編集済み: the cyclist
2017 年 4 月 11 日
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);
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Operating on Diagonal Matrices についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!