finding the position of the minimum element in the matrix
40 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Umut Oskay
il 12 Apr 2020
Commentato: madhan ravi
il 12 Apr 2020
hello. i need to know the position of the minimum element of the matrix. For example
M= [1 5 7; 2 4 5 ]
M=
1 5 7
2 4 5
the min is 1 and it's position is (1,1).
How can i find this?
Thanks
0 Commenti
Risposta accettata
Image Analyst
il 12 Apr 2020
You really should use find() rather than min() since find() will find them all and min() only finds the first occurrence, which is important since the min could occur at multiple locations:
M = [1 5 7; 2 4 5; 4, 1, 5]
minValue = min(M(:));
% Find all (row, column) pairs where M = the min value.
[rows, columns] = find(M == minValue)
% Print them out:
for k = 1 : length(rows)
fprintf('M equals the min value of %f at row = %d, column = %d.\n', ...
minValue, rows(k), columns(k));
end
You'll see
M =
1 5 7
2 4 5
4 1 5
rows =
1
3
columns =
1
2
M equals the min value of 1.000000 at row = 1, column = 1.
M equals the min value of 1.000000 at row = 3, column = 2.
0 Commenti
Più risposte (1)
madhan ravi
il 12 Apr 2020
Modificato: madhan ravi
il 12 Apr 2020
MIN = min( M(:) );
[ Row, Column ] = ind2sub( size(M), find(MIN == M, 1 ) )
2 Commenti
Vedere anche
Categorie
Scopri di più su Creating and Concatenating Matrices in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!