extracting the indices of minimum value in a vector, ignoring last value
Ältere Kommentare anzeigen
I need to find the indices of the minimum positive value in a vector, ignoring the last value in the vector. if there is a tie, I need the first value based on indexes.
for example: if R = [120; 70; 50; 0] I want the incides for 50 back (3,1)
if R = [10; 16 ; 10; 30; 10; 0] I want the indices for the first 10 back (1,1)
thanks!!!!
Antworten (1)
Paulo Silva
am 26 Mär. 2011
a=R; %create a copy of R
%in order to only find positive numbers we do the next line
a(a<=0)=nan; %replace negative numbers and the zero with nan
[r,c]=find(a==min(a(1:end-1)),1) %find values
alternative and better:
[r,c]=find((R==min(a(1:end-1)))>0,1) %find values
4 Kommentare
brittany adam
am 26 Mär. 2011
Paulo Silva
am 26 Mär. 2011
i fixed the code, try it now
brittany adam
am 26 Mär. 2011
Jan
am 26 Mär. 2011
@Brittany: Does this mean, that you accept the question? Then please press the corresponding button.
Kategorien
Mehr zu Logical finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!