是否有一个清洁器(如在理想情况下内置;我从未使用过Matlab,如果我错过了一些明显的东西,那么道歉)在Matlab中做k最小的argmin(即如果一个数组是[4,5,6] ,7]它应该按顺序返回索引1,2)除了像:
之类的东西arr = [4,5,6,7];
[~, argmin1] = min(arr);
arr(argmin1) = Inf;
[~, argmin2] = min(arr);
...
答案 0 :(得分:4)
假设我们想要数组k
中arr
最小元素的索引,然后:
arr=[4,5,6,7,2];
[~,indices]=sort(arr,'ascend');
argmin=indices(1:k);
如果想要k
个最高值,请改用descend
参数。