Matlab - Contar elementos vector

   
Vista:

Contar elementos vector

Publicado por Francisco flang@renare.uchile.cl (18 intervenciones) el 08/08/2014 07:00:23
Hola a todos:

Tengo un vector de 1 y 0, y necesito crear un nuevo vector, pero con rangos de unos seguidos, asi por ejemplo, tengo este vector

X= [0 1 1 0 1 1 1 0 0 0 1]

y necesito uno nuevo con

Y=[2 3 1]
que es la cantidad de unos seguidos que hay entre los ceros.

Saludos y gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Contar elementos vector

Publicado por Enrique (4 intervenciones) el 08/08/2014 11:47:33
Hola francisco, aquí te dejo lo que pedias

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
x=[1 1 1 0 1 1 0 0 1 1 1 0 0 0 1 1 1 1 0];
a=length(x);
num=1;
in=1;
%%Este primer bucle genera la suma de unos seguidos pero tambien posiciona
%%los ceros
for i=1:a
    if x(i)==1
        vec(in)=num;
        num=num+1;
    end
    if x(i)==0
        in=in+1;
        num=1;
    end
end
 
%%Este segundo bucle elimina los ceros y se queda con el vector de la suma
%%de unos seguidos
var=1;
for j=1:length(vec)
    if vec(j)~=0
        vector_definitivo(var)=vec(j);
        var=var+1;
    end
end
vector_definitivo;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Contar elementos vector

Publicado por Francisco (18 intervenciones) el 09/08/2014 05:01:38
Muchas gracias!!! funciono perfecto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar