How to find X value of given Y close to zero ?
7 views (last 30 days)
Show older comments
Hello!
My question is How to find the value of Y more close to zero first (note Y consists of both positive and negative numbers) and then find the corresponding X value from a matrix ? Many thanks in advance.
For example: 6x6 matrix
338.00 339.00 340.00 341.00 342.00 343.00
1.00 -100.00 -100.00 -100.00 -100.00 -100.00 -100.00
2.00 100.00 100.00 100.00 100.00 100.00 100.00
3.00 0.28 0.12 -0.05 -0.21 -0.38 -0.55
4.00 0.28 0.12 -0.05 -0.21 -0.38 -0.55
5.00 8.21 8.24 8.26 8.28 8.30 8.32
6.00 8.21 8.24 8.26 8.28 8.30 8.32
To find the value closest to 0, which is -0.05 corresonding to the value 340. 340 is the output value.
0 Comments
Accepted Answer
More Answers (1)
Jon
on 9 Dec 2020
Edited: Jon
on 9 Dec 2020
Here's another approach that is maybe more obvious to understand
x = [338.00 339.00 340.00 341.00 342.00 343.00]
data = [ ...
-100.00 -100.00 -100.00 -100.00 -100.00 -100.00
100.00 100.00 100.00 100.00 100.00 100.00
0.28 0.12 -0.05 -0.21 -0.38 -0.55
0.28 0.12 -0.05 -0.21 -0.38 -0.55
8.21 8.24 8.26 8.28 8.30 8.32
8.21 8.24 8.26 8.28 8.30 8.32]
% find column locations of minimum
[~,icol] = min(abs(data)) % columns correspond to x values
% select the x value corresponding to the column where the minimum was found
% just need the first instance if there are more than one
xmin = x(icol(1))
10 Comments
dpb
on 10 Dec 2020
Glad to help...teaching as well as "just" answers is the goal of many of us here...
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!