Finding the closest value in an array of 7 dimension vector
1 回表示 (過去 30 日間)
古いコメントを表示
Hi,
I have an array period_temp (2,1,1,10,10,10,8) which gives a lot of values in 2 * 1 * 1 * 10 * 10 * 8 matrix
now suppose i have one value say 3.5 which is not present in the matrix.
How do I find the closest value to 3.5?
Please guide me, I am a beginner
0 件のコメント
採用された回答
Ameer Hamza
2020 年 4 月 17 日
編集済み: Ameer Hamza
2020 年 4 月 17 日
This code shows an example
x = rand(2,2,2);
val = 0.5;
[~,idx] = min(abs(x-val), [], 'all', 'linear');
[i1,i2,i3] = ind2sub(size(x), idx); % return index in each dimension
closest_value = x(i1,i2,i3);
The following is equivalent to the above code but convenient to use if the number of dimensions is large.
x = rand(2,2,2);
val = 0.5;
[~,idx] = min(abs(x-val), [], 'all', 'linear');
[i{1:3}] = ind2sub(size(x), idx); % return index in each dimension
closest_value = x(i{:});
0 件のコメント
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Matrices and Arrays についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!