Info

この質問は閉じられています。 編集または回答するには再度開いてください。

find seqence of values in an array

1 回表示 (過去 30 日間)
Allan
Allan 2016 年 3 月 1 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
I have an array of 1000-2000. Within that are some sequences of 4-5 elements. How can I find then?
  2 件のコメント
Jan
Jan 2016 年 3 月 1 日
編集済み: Jan 2016 年 3 月 1 日
Do you mean, that the array is a vector with 1000 to 2000 elements? And some neighboring 4 to 5 elements are equal? Or are you searching for a specific sequence of 4 to 5 elements?
Please edit the question and insert a small example with inputs and wanted outputs.
the cyclist
the cyclist 2016 年 3 月 1 日
So, a small version would be that you have an array A like
A = [1 1 1 1 2 3 4 78 12 16 17 18 19 20 20 20 43]
and you want to find the sequences
1 2 3 4
and
16 17 18 19 20
?
What specifically do you want the output to be?

回答 (1 件)

Florian Bendl
Florian Bendl 2016 年 3 月 1 日
Judging by your example: - Generate a difference vector B = diff(A); - Generate a logical from it B = B == 1; - Loop through the vector and note down when B switches from 0 to 1 and from 1 to 0 respectively. This will give you the beginning and the end of the sequences.- - Having the positions, you can easily choose the longest one.

この質問は閉じられています。

タグ

製品

Community Treasure Hunt

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

Start Hunting!

Translated by