How do I get the closest values of an array stored for a particular input ?
1 view (last 30 days)
Show older comments
Raahul Palanivel Uma
on 17 Aug 2016
Commented: Azzi Abdelmalek
on 17 Aug 2016
Hello all,
I have an array A = [180 170 160 150 140 130] and b = 165... how do I determine the closest positions and values of b from A i.e. what function should I use to get the answer as 170 & 160.
Thank you for your help in advance.
0 Comments
Accepted Answer
Azzi Abdelmalek
on 17 Aug 2016
Edited: Azzi Abdelmalek
on 17 Aug 2016
A = [180 170 160 150 140 130]
b=165
a1=min(A(A>b))
a2=max(A(A<b))
More Answers (1)
Thorsten
on 17 Aug 2016
[~, ind]= sort(abs(A-b));
A(ind(1:2))
2 Comments
Azzi Abdelmalek
on 17 Aug 2016
It doesn't work for this example
A = [180 170 162 161 150 140 130]
b=165
[~, ind]= sort(abs(A-b));
A(ind(1:2))
The result is
162 161
See Also
Categories
Find more on Logical 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!