Finding first of n consecutively rising data points

1 回表示 (過去 30 日間)
Etienne O'Brien
Etienne O'Brien 2012 年 1 月 2 日
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 件のコメント
the cyclist
the cyclist 2012 年 1 月 2 日
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.

サインインしてコメントする。

採用された回答

Walter Roberson
Walter Roberson 2012 年 1 月 2 日
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 件のコメント
Andrei Bobrov
Andrei Bobrov 2012 年 1 月 2 日
Hi Walter! Small corrected:
strfind(diff(data) > 0, ones(1,n-1))
Etienne O'Brien
Etienne O'Brien 2012 年 1 月 2 日
Thanks everyone,
This is just what I was looking for.

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by