如何找到每行中的最小值,以及最小值的索引?
octave:1> a = [1 2 3; 9 8 7; 5 4 6]
a =
1 2 3
9 8 7
5 4 6
答案 0 :(得分:10)
在文档中很难找到。 https://www.gnu.org/software/octave/doc/v4.0.3/Utility-Functions.html
octave:2> [minval, idx] = min(a, [], 2)
minval =
1
7
4
idx =
1
3
2
答案 1 :(得分:4)
如果A是您的矩阵,请执行:
[colMin, row] = min(A);
[rowMin, col] = min(A');
colMin将是每行中的最小值,并列入列索引。 rowMin将是每列中的最小值,并对行索引进行排序。
要查找最小元素的索引:
[colMin, colIndex] = min(min(A));
[minValue, rowIndex] = min(A(:,colIndex))
答案 2 :(得分:2)
假设X是矩阵
row,col =最小值的行和列索引
[min_value, column_index] = min(X(:))
[row, col] = ind2sub(size(X),column_index)
答案 3 :(得分:0)
给定一个大小为 m x n 的矩阵 A,您需要找到 x 列中最小值的行号。
例如 A 是 64x3 大小;
search_column = 3;
[val,row] = min(results(:,search_column),[],1);
#row has the row number for the smallest value in the 3rd column.
获取最小行值的第一列和第二列的值
column1_value = A(row,1);
column2_value = A(row,2);