dpb
Posts:
8,181
Registered:
6/7/07


Re: Finding position in array
Posted:
Jun 6, 2014 12:44 AM


On 6/5/2014 6:04 PM, Sepp wrote: > Hi > > I have an array of real numbers, let's say e.g. > > a = [1.23, 3.5, 6, 23.54, 44.234, 60.8]; > > The array is sorted in ascending order. > > Now I have a new value, let's say 8.54 and I want to find the position > in the array a. The position would be after element 6 and before element > 23.54. I.e. I should somehow retrieve the index position 3 > (corresponding to 6) or 4 (corresponding to 23.54). > > How can I do that efficiently in Matlab? I tried out the find method but > it doesn't work.
Of course it works...
>> a = [1.23, 3.5, 6, 23.54, 44.234, 60.8]; >> x=8.54; >> find(x<a,1,'first') ans = 4 >> find(x>a,1,'last') ans = 3 >>


