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

2 Ansichten (letzte 30 Tage)
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.

Akzeptierte Antwort

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

Weitere Antworten (1)

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

Kategorien

Mehr zu Aerospace Applications finden Sie in Help Center und File Exchange

Produkte


Version

R2020b

Community Treasure Hunt

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

Start Hunting!

Translated by