MATLAB Answers

Finding 4 closest values to a value in an array

3 views (last 30 days)
AAS
AAS on 28 Sep 2020
Commented: Sindar on 29 Sep 2020
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?

  0 Comments

Sign in to comment.

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)

Community Treasure Hunt

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

Start Hunting!