Finding 4 closest values to a value in an array

18 views (last 30 days)
How do I find multiple points close to a particular number in an array? I can do this for one value but how do I extend that?

Accepted Answer

Sindar
Sindar on 28 Sep 2020
use mink
[~,idx] = mink(abs(data-find_point),5);
data(idx)
  2 Comments
AAS
AAS on 29 Sep 2020
Hi, Thankyou! How can I extend this to select maybe two values above and below the value I want?
Sindar
Sindar on 29 Sep 2020
You'd play around with (data-find_point) without the abs(). Algorithm something like:
  • separate data into values equal to, larger than, smaller than find_point
  • keep all equal to
  • find smallest 2 positive error
  • find largest 2 negative error

Sign in to comment.

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!