minimum value array issue
4 ビュー (過去 30 日間)
古いコメントを表示
I am using the following code line to get the minimum value of the matrix dn and the corresponding index of the minimum value
[TransmiterNode,ind]=min(dn(:));
what I want to do is on the next run of this code line I do not want the old minimum value to be considered
2 件のコメント
採用された回答
Guillaume
2014 年 9 月 5 日
If you know that all the values in dn are different:
%init
ind = [];
%for ...
dntemp = dn;
dntemp(ind) = [];
[TransmiterNode,ind]=min(dntemp(:));
%...
%end
If not:
%init
%TransmiterNode = NaN; %or any other unused value in dn
%for ...
dntemp = dn;
dntemp(find(TransmiterNode)) = [];
[TransmiterNode,ind]=min(dntemp(:));
%...
%end
その他の回答 (2 件)
per isakson
2014 年 9 月 5 日
編集済み: per isakson
2014 年 9 月 5 日
Another approach, try
dn = [2 5 8 7 0 1];
[ dn_sorted, ix ] = sort( dn, 'ascend' );
ix contains the "positions" of the values in the original vector, dn
Rushikesh Tade
2014 年 9 月 5 日
編集済み: Rushikesh Tade
2014 年 9 月 5 日
If removing of values is allowed :
[TransmiterNode,ind]=min(dn(:));
dn(ind)=[];
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!