Extracting the closest possible value having the same indices
Show older comments
t1 = 2.3
t2 = 5.6
%its is a 2*7*1*10*10*15*8 matrix
p = period_arr(1,:,:,:,:,:,:); % this is of the form p = period_arr(i1, i2, i3, i4, i5, i6, i7);
n = period_arr(2,:,:,:,:,:,:); % this is of the form n = period_arr(i1, i2, i3, i4, i5, i6, i7);
dist_p = abs(p - t1);
[min_dist_p, idx_p] = min(dist_p(:));
dist_n = abs(n - t2);
[min_dist_n, idx_n] = min(dist_n(:));
c_tp = p(idx_p);
c_tn = n(idx_n);
So based on the minimum distance I get the closest value, and it is working fine.
But, I have a problem where I have to get only the closest value where the indices i4 of p = i4 of n and i5 of p = i5 of n. It should regulate the same value for both p and n.
How can I do that? Please help me out. I've been stuck on this problem from 2 days.
For example, I can have
2.6 = period_arr(1,:,:,a,b,:,:)
7.8 = period_arr(2,:,:,a,b,:,:)
6 Comments
Ganesh Kini
on 28 May 2020
Ganesh Kini
on 28 May 2020
Stephen23
on 28 May 2020
- do not split the data into separate variables: keep them in vectors/matrices.
- use the euclidean distance to find the closest set of points.
Ganesh Kini
on 28 May 2020
Ganesh Kini
on 29 May 2020
Answers (0)
Categories
Find more on Axis Labels in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!