How to search and find nearest data in the given array
1 回表示 (過去 30 日間)
古いコメントを表示
I have an array (Matt J attached)
I have n = 70; or any other number. SP = 998.45 or any other number from column2. I want to search and find corresponding row in column2 contains 998.45 or other number with nearest value of column1 in finded rows with n =70 or any other number. Please help me.
70 987 984.65 0.1 139.72
43 987.05 984.6 0.19 89.81
70 987.05 984.7 0.1 139.72
70 987.05 984.7 0.1 139.72
43 987.1 984.65 0.18 89.8
70 987.1 984.75 0.1 139.72
43 987.15 984.7 0.18 89.8
70 987.15 984.8 0.1 139.72
43 987.2 984.75 0.18 89.8
70 987.2 984.85 0.1 139.72
43 987.25 984.8 0.18 89.8
70 987.25 984.9 0.1 139.72
43 987.3 984.85 0.18 89.8
...
2 件のコメント
dpb
2022 年 6 月 4 日
Sorry, the explanation is too disjointed to undersaand.
What would your result be expected to be for the above inputs and, how, precisely would that have been determined to be the correct answer?
採用された回答
Voss
2022 年 6 月 4 日
load('array.mat')
n = 70;
SP = 998.45;
% find the rows where column 2 of array is SP
matching_rows = find(array(:,2) == SP)
% find the index of the value nearest to n
% in column 1, among those rows of array
[~,idx] = min(abs(array(matching_rows,1) - n))
% get the value
result = array(matching_rows(idx),1)
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!