How to get nearest values in matrix and save indexes of these values?
1 回表示 (過去 30 日間)
古いコメントを表示
I have values saved as pi=[5 10 15].
And I have another values saved in puk, which is 401x1 double.
I need to find values in puk which are nearest to the values of pi, and as result I need to have indexes of that values in puk.
So I do not know how to search for nearest values in puk? And how to get indexes of these values?
0 件のコメント
採用された回答
Stephen23
2019 年 5 月 7 日
編集済み: Stephen23
2019 年 5 月 7 日
>> X = [5,10,15];
>> Y = 0:7/5:30;
>> [~,Z] = min(abs(X-Y(:))) % the indices of the closest values:
Z =
5 8 12
>> Y(Z) % the corresponding values in Y:
ans =
5.6 9.8 15.4
For MATLAB versions before R2016b you will need to use bsxfun:
[~,Z] = min(abs(bsxfun(@minus,X,Y(:))))
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Matrix Indexing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!