0
マトリックスの非対角要素の最小値をmatlabのインデックスと共に調べる最短の方法はありますか?行列から非対角の最小要素を1つ見つけます。
A = [1 2 3; 4 1 3; 4 4 4];私は最小非対角要素のインデックスを返したいと思います。ここでは、1行目と2列目で2になります。だから、私は帰りたい(1,2)。おかげさまで 完全にベクトル化された代替のために
マトリックスの非対角要素の最小値をmatlabのインデックスと共に調べる最短の方法はありますか?行列から非対角の最小要素を1つ見つけます。
A = [1 2 3; 4 1 3; 4 4 4];私は最小非対角要素のインデックスを返したいと思います。ここでは、1行目と2列目で2になります。だから、私は帰りたい(1,2)。おかげさまで 完全にベクトル化された代替のために
てみ
B = (A + diag(Inf(size(diag(A))))); % put Inf on diagonal
[~,ndx] = min(B(:)); % get the linear index of the minimum value
[r,c] = ind2sub(size(A),ndx); % get row, column of corresponding to linear index
for k=1:size(A,1)
A(k,k) = inf;
end
[row,col] = find(A==min(A(:)))