Finding x value for y values on a dataset.

20 views (last 30 days)
Say I have this matrix:
y = [-5 -4 -3 -2 -1 0 1 2 3 4 5;
-6 -5 -4 -3 -2 -1 0 1 2 3 4;
0 1 2 3 4 5 6 7 8 9 10];
And this is my domain:
x = [0 1 2 3 4 5 6 7 8 9 10 ];
and I plot them like so
plot(x, y)
How can I find the x values when my y values cross a value like 3.5?
I would like my output to be
output = [9 10 5]
Thanks!

Accepted Answer

the cyclist
the cyclist on 16 Nov 2021
The algorithm you want is not perfectly clear, and I can't see quite how you get the output from your input. But it seems that you want something like this?
y = [-5 -4 -3 -2 -1 0 1 2 3 4 5;
-6 -5 -4 -3 -2 -1 0 1 2 3 4;
0 1 2 3 4 5 6 7 8 9 10];
nyrows = size(y,1);
output = zeros(1,nyrows);
for ny = 1:nyrows
output(ny) = find(y(ny,:)>3.5,1) - 1; % Not sure exactly which element you want
end
disp(output)
9 10 4

More Answers (0)

Categories

Find more on MATLAB in Help Center and File Exchange

Products

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!