minimum value array issue
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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 commentaires
Réponse acceptée
Guillaume
le 5 Sep 2014
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
Plus de réponses (2)
per isakson
le 5 Sep 2014
Modifié(e) : per isakson
le 5 Sep 2014
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
le 5 Sep 2014
Modifié(e) : Rushikesh Tade
le 5 Sep 2014
If removing of values is allowed :
[TransmiterNode,ind]=min(dn(:));
dn(ind)=[];
0 commentaires
Voir également
Catégories
En savoir plus sur Matrix Indexing dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!