how to find min or max value in each row of a matrix and its index, if a matrix is 3x2 it will find the min in first row
11 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Bashir Yusuf Bichi
am 7 Nov. 2017
Kommentiert: madhan ravi
am 6 Aug. 2020
R= [27 25 21; 35 38 37; 42 47 49]; 1st min value will be 21
0 Kommentare
Akzeptierte Antwort
Mischa Kim
am 7 Nov. 2017
Bearbeitet: Mischa Kim
am 7 Nov. 2017
Use
[val,loc] = min(R')
val =
21 35 42 % min value in each row
loc =
3 1 1 % column location of min value
4 Kommentare
Fahim MUMAND
am 14 Okt. 2019
suppose a matrix R = ones(4,4)
Every element is maximum and minimum, how to extract their indices?
How to extract the indices of max or min if there are more than 1 in col and in row?
Weitere Antworten (1)
Ariunbolor Purvee
am 6 Aug. 2020
Bearbeitet: Ariunbolor Purvee
am 6 Aug. 2020
absDiff=[1 2 3; 4 5 6; 7 8 9; 9 10 12];
MaxMinAveRow= MaxMinAveOfRow(absDiff);
display(MaxMinAveRow);
function MaxMinAveRow= MaxMinAveOfRow(absDiff)
n=length(absDiff);
maxRow=zeros(n,1);
minRow=zeros(n,1);
aveRow=zeros(n,1);
sum=0;
for i=1:n
maxRow(i)=sum+max(absDiff(i,:));% max of row
minRow(i)=sum+min(absDiff(i,:));% min of row
aveRow(i)=sum+mean(absDiff(i,:));% average of row
end
MaxMinAveRow=[ maxRow,minRow, aveRow ];
end
The result on Command Window
MaxMinAveRow =
3.0000 1.0000 2.0000
6.0000 4.0000 5.0000
9.0000 7.0000 8.0000
12.0000 9.0000 10.3333
1 Kommentar
madhan ravi
am 6 Aug. 2020
Using sum as a variable is not a good idea, sum() is an in-built function.
Siehe auch
Kategorien
Mehr zu Matrix Indexing finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!