满足特定标准的最小MATLAB指标
假设我有一个矩阵满足特定标准的最小MATLAB指标,matlab,Matlab,假设我有一个矩阵 A= [1 2 3 2 5 5 4 6 2] 我想从特定的列范围中找到最大值的索引,由向量a_index=[1 0 1]给出,意思是从第1列和第3列中找到最大值。这个最大值是5。如何找到它的索引,即行=2列=3。注意5也出现在第2列中,但我不想要它 如果使用普通的“find”,则无法获得正确的解决方案将a中不需要的列的元素替换为NaN。然后使用查找最大元素的线性索引。最后,使用将线性索引转换为行和列下标 在≥ R2016b,第二行可以用隐式扩展写入: A =
A= [1 2 3
2 5 5
4 6 2]
我想从特定的列范围中找到最大值的索引,由向量a_index=[1 0 1]
给出,意思是从第1列和第3列中找到最大值。这个最大值是5。如何找到它的索引,即行=2列=3。注意5也出现在第2列中,但我不想要它
如果使用普通的“
find
”,则无法获得正确的解决方案将a
中不需要的列的元素替换为NaN
。然后使用查找最大元素的线性索引。最后,使用将线性索引转换为行和列下标
在≥ R2016b,第二行可以用隐式扩展写入:
A = A.*A_index;
最后两行也可以写成:
[r,c] = find(A==max(A(:)));
用
NaN
替换A
中不需要的列的元素。然后使用查找最大元素的线性索引。最后,使用将线性索引转换为行和列下标
在≥ R2016b,第二行可以用隐式扩展写入:
A = A.*A_index;
最后两行也可以写成:
[r,c] = find(A==max(A(:)));
不管你觉得哪个更好