How to determine the two closest values to a threshold value

6 ビュー (過去 30 日間)
Jonathan Moorman
Jonathan Moorman 2020 年 8 月 11 日
コメント済み: hosein Javan 2020 年 8 月 11 日
Hi! I have a threshold value of 0.9 and I need to find its two closest values in a matrix.
Below is a simple example of what my question is based on. Is there a way to determine the previous y value before 0.9 (0.88 in the example) and the next value after (0.92)?
y = [0, 0.2 , 0.6, 0.88, 0.92, 1]
(Note* this is only an example matrix. The matrix values will be different every run)

採用された回答

hosein Javan
hosein Javan 2020 年 8 月 11 日
編集済み: hosein Javan 2020 年 8 月 11 日
%% nearest value considerin it is bigger or smaller than threshold
m1 = min(y(y>0.9)) % nearest value after threshold
m2 = max(y(y<0.9)) % nearest value before threshold
%% nearest value regardless of being bigger or smaller than threshold
[~,i] = sort(abs(y-0.9));
m1 = y(i(1)) % 1st nearest value
m2 = y(i(2)) % 2nd nearest value
  2 件のコメント
Jonathan Moorman
Jonathan Moorman 2020 年 8 月 11 日
Worked great. Thanks!
hosein Javan
hosein Javan 2020 年 8 月 11 日
you're welcome.

サインインしてコメントする。

その他の回答 (0 件)

Community Treasure Hunt

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

Start Hunting!

Translated by