Finding first of n consecutively rising data points

Hi,
My data look like:
0,2,3,4,3,2,*1*,2,8,9,10,11,12,13, 2, 1, etc
I want to find the index of the value (i) which is the first of n data points which consecutively increase in value. In this example, from the 7th data point (i) onwards there are 8 (n) data points of increasing value(the last being 13). Thank you.

1 Comment

I think you need to be more specific. For example, do you want i=1 and n=3, because of the sequence 0,2,3 (the first three elements). Do you want ALL the increasing sequences, or just the longest, etc.

Sign in to comment.

 Accepted Answer

strfind(diff(data) > 0, ones(1,n))
And yes, I know that strfind is usually used for character data, but it turns out that it can be used for numeric searches as well.

2 Comments

Hi Walter! Small corrected:
strfind(diff(data) > 0, ones(1,n-1))
Thanks everyone,
This is just what I was looking for.

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!