Getting the entry value (i,j) for the minimum value of reach row of a matrix

1 visualización (últimos 30 días)
Suppose I have a matrix
A = 3×3
11 13 15
12 14 16
32 18 21
How do I get the output (1,1) (2,1) and (1,3) which indicate the position of the minimum value of each row.

Respuesta aceptada

Voss
Voss el 9 de Abr. de 2022
A=[11 13 15
12 14 16
32 18 21];
[minrow,idx] = min(A,[],2) % min value of each row, with column index
minrow = 3×1
11 12 18
idx = 3×1
1 1 2
result = [(1:size(A,1)).' idx] % 18 is at (3,2) not (1,3)
result = 3×2
1 1 2 1 3 2

Más respuestas (1)

Arif Hoq
Arif Hoq el 9 de Abr. de 2022
may be you are looking for this:
A=[11 13 15
12 14 16
32 18 21];
mincol=min(A) % min value of each column
mincol = 1×3
11 13 15
minrow= min(A,[],2) % min value of each row
minrow = 3×1
11 12 18
  3 comentarios
Arif Hoq
Arif Hoq el 9 de Abr. de 2022
Editada: Arif Hoq el 9 de Abr. de 2022
if you want fine the row,column of minimum of each row, then
A=[11 13 15
12 14 16
32 18 21];
mincol=min(A) % min value of each column
mincol = 1×3
11 13 15
minrow= min(A,[],2) % min value of each row
minrow = 3×1
11 12 18
[row col]=find(ismember(A,minrow))
row = 3×1
1 2 3
col = 3×1
1 1 2
% here A(1,1)=11 >> A(2,1)=12 >> A(3,2)=18

Iniciar sesión para comentar.

Categorías

Más información sobre NaNs en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by