using the find function to find intersection of two lines
Show older comments
Hi,
I have a vector A :
A = [ 10 20 30 40 50 60 50 40 30 20 10]
I want to find the nearest index where it crosses 18, so in this case it would be 2 and 10.
AA = find(A=18)
Thanks!
2 Comments
Renato Agurto
on 15 Apr 2015
Do you want to find the index for every time it crosses 18:
for example if
A = [10 20 30 40 50 60 50 40 30 21 10]
the answer would still be 2 and 10... or just 2?
shobhit mehrotra
on 16 Apr 2015
Accepted Answer
More Answers (1)
Adam
on 15 Apr 2015
find( A == 18 + min( abs( A - 18 ) ) )
is a one-liner to do what you want. Personally I would probably do it as multiple lines, but the idea is the same.
1 Comment
Titus Edelhofer
on 15 Apr 2015
That's better than mine, because my code always selects the point to the left, Adam's picks the one that's nearer ...
Categories
Find more on Matrix Indexing 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!