MATLAB: Help with ‘find’ function

arrayfindindexposition;vectorvectors

Hello! I have a vector X with some elements, and I want to find the position p of the element of X whose value is as close as possible to a known value A. For example, X = [1, 4.5, 6, 3 ,2.8] and A=4.7. The position of the element in X whose value is as close as possible to A is p=2, since X(2)=4.5 . Is there a fast way to do this, maybe using the function 'find' ? Thank you very much

Best Answer

[val,ind]=min(abs(X-A))
Where val is the distance and ind the index .