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
22 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Bashir Yusuf Bichi
el 7 de Nov. de 2017
Comentada: madhan ravi
el 6 de Ag. de 2020
R= [27 25 21; 35 38 37; 42 47 49]; 1st min value will be 21
0 comentarios
Respuesta aceptada
Mischa Kim
el 7 de Nov. de 2017
Editada: Mischa Kim
el 7 de Nov. de 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 comentarios
Fahim MUMAND
el 14 de Oct. de 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?
Más respuestas (1)
Ariunbolor Purvee
el 6 de Ag. de 2020
Editada: Ariunbolor Purvee
el 6 de Ag. de 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 comentario
madhan ravi
el 6 de Ag. de 2020
Using sum as a variable is not a good idea, sum() is an in-built function.
Ver también
Categorías
Más información sobre Matrix Indexing en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!