如何找到增强矩阵中包含的系数矩阵的绝对最大值的索引?例如,考虑:
A =
1 -2 1 5
-3 2 -3 10
2 -5 5 15
MATLAB代码应返回:
row = 3
col = 2
注1:如果系数矩阵中存在多个具有绝对最大值的元素,则代码应返回其中一个。
注2:我不希望在新变量或同一增广矩阵中保存系数矩阵。喜欢以下解决方案
B = A(:, 1:3);
[~, Index] = max(abs(B(:)));
[row, col] = ind2sub(size(B), Index)
或
A = A(:, 1:3);
[~, Index] = max(abs(A(:)));
[row, col] = ind2sub(size(A), Index)
注3:我的解决方案是
var = max(max(abs(A(:, 1:3))));
[row, col] = find(abs(A(:, 1:3)) == var, 1)
但我正在寻找一种更简单的方法。
答案 0 :(得分:1)
我的解决方案如下:
[~,col] = max(max(abs(A(:,1:3))))
[~,row] = max(abs(A(:,col)))
首先,通过两个max函数可以找到最大元素的col索引。基于此,
第二个任务就是找到相应col中最大元素的行索引。
我希望它可以帮到你。