包含在增广矩阵中的系数矩阵的绝对最大值指数

时间:2013-11-29 12:49:20

标签: matlab

如何找到增强矩阵中包含的系数矩阵的绝对最大值的索引?例如,考虑:

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)

但我正在寻找一种更简单的方法。

1 个答案:

答案 0 :(得分:1)

我的解决方案如下:

[~,col] = max(max(abs(A(:,1:3))))
[~,row] = max(abs(A(:,col)))

首先,通过两个max函数可以找到最大元素的col索引。基于此,

第二个任务就是找到相应col中最大元素的行索引。

我希望它可以帮到你。