Error in using find

Hello,
I am using find(a==min(a),1) to find the index of minimum element of "a" which is a row vector. I am looking for the first minimum, in fact. However, I am receiving this error:
??? Subscript indices must either be real positive integers or logicals.
I am really confused since I am using the same syntax in another code and it's working perfectly there. But I can't see what might go wrong here.
Any help would be appreciated. Saeed

 Risposta accettata

Wayne King
Wayne King il 10 Feb 2012

0 voti

Did you by any chance assign a variable as min? Because min is a MATLAB function, if you also create a variable, min, (never a good idea), you will get that error. Enter:
>>which min
and see what you get. To demonstrate that error:
min = 2;
a = randn(1,4);
find(a==min(a),1)
You should then clear min

Più risposte (1)

Saied
Saied il 10 Feb 2012

0 voti

I had actually defined min as a variable in my code. I changed it and problem is resolved.
Thank you.

Categorie

Tag

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by