how to find the nearest value (if a value is already provided) from a given array?

1 view (last 30 days)
I want to find the nearest value of x in the array m
x=0.61;
m=linspace(0,1,9);
meshs = 1×9
0 0.1250 0.2500 0.3750 0.5000 0.6250 0.7500 0.8750 1.0000
We know the nearest value is 0.6250, but i would like a code to do this for me, for any value of x.

Accepted Answer

Yongjian Feng
Yongjian Feng on 3 Feb 2022
Try this:
x=0.61;
m=linspace(0,1,9);
[a, b] = min(abs(m-x));
m(b)

More Answers (1)

David Hill
David Hill on 3 Feb 2022
[~,idx]=min(abs(m-x));
M=m(idx);

Community Treasure Hunt

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

Start Hunting!