Finding a value, index which lies between 2 points in an array

2 ビュー (過去 30 日間)
Yash Runwal
Yash Runwal 2020 年 9 月 10 日
コメント済み: Yash Runwal 2020 年 9 月 10 日
Hello fellow MATLAB users,
I am currently writing a MATLAB function for which I need some help.
For example:
I have an array and a value:
X = [0, 10, 20];
value = 17;
I need to find the indices of the X in which the value lies:
Here the answer will be X[2] and X[3].
But I am not sure how to do this. I would really appreciate any help I can get.
Thank You.

採用された回答

Matt J
Matt J 2020 年 9 月 10 日
i=discretize(value,X)
j = i+1
X([i,j])
  1 件のコメント
Yash Runwal
Yash Runwal 2020 年 9 月 10 日
Actually both of the answers work. I am gonna have to look up the functions discretize and interp1

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

その他の回答 (1 件)

Matt J
Matt J 2020 年 9 月 10 日
編集済み: Matt J 2020 年 9 月 10 日
i = interp1(X,1:numel(X),value,'previous')
j = i+1
X([i,j])

カテゴリ

Help Center および File ExchangeMatrix Indexing についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by