Borrar filtros
Borrar filtros

How can compute sequential occurrence of elements in a vector

2 visualizaciones (últimos 30 días)
I would like to compute the number of each sequential sequence in a vector
for example i have x=[ 0 0 0 0 1 1 1 1 1 0 0 0 2 2 2 2 0 0 0 0 0 3 3 3 3 3 3]
So, I need to compute the lengths of the following sequences
[0 0 0 0 1 1 1 1 1]=9 ,
[0 0 0 2 2 2 2]=7,
[0 0 0 0 0 3 3 3 3 3 3]=11.
The expected result is [9 7 11].

Respuesta aceptada

Jan
Jan el 7 de Mzo. de 2021
Editada: Jan el 7 de Mzo. de 2021
x = [ 0 0 0 0 1 1 1 1 1 0 0 0 2 2 2 2 0 0 0 0 0 3 3 3 3 3 3];
change = [true, diff(x) < 0, true];
index = diff(find(change))

Más respuestas (1)

hanadi abbas
hanadi abbas el 7 de Mzo. de 2021
Editada: hanadi abbas el 12 de Mzo. de 2021
Thanks . That's work!

Categorías

Más información sobre Get Started with MATLAB en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by