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