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

1 次查看(过去 30 天)
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.

采纳的回答

Voss
Voss 2022-4-9
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

更多回答(1 个)

Arif Hoq
Arif Hoq 2022-4-9
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 个评论
Arif Hoq
Arif Hoq 2022-4-9
编辑:Arif Hoq 2022-4-9
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

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 NaNs 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by