how to do repeating numbers in array

1 visualización (últimos 30 días)
Murugan C
Murugan C el 19 de Sept. de 2018
Comentada: Murugan C el 20 de Sept. de 2018
Hi
I have an array like [1 0 0 0 2 0 0 0 3 0 0 0 0 0 5 0 0 0 0].
I want output like, [1 1 1 1 2 2 2 2 3 3 3 3 3 3 5 5 5 5 5].
how i can do this?
Thanks in Advance!!!
Murugan

Respuesta aceptada

Stephen23
Stephen23 el 19 de Sept. de 2018
Editada: Stephen23 el 19 de Sept. de 2018
An old fashioned way:
>> V = [1,0,0,0,2,0,0,0,3,0,0,0,0,0,5,0,0,0,0];
>> X = V~=0;
>> U = V(X);
>> U(cumsum(X))
ans =
1 1 1 1 2 2 2 2 3 3 3 3 3 3 5 5 5 5 5

Más respuestas (1)

jonas
jonas el 19 de Sept. de 2018
A is your array
A(A==0)=NaN
A=fillmissing(A,'previous')
  1 comentario
Murugan C
Murugan C el 20 de Sept. de 2018
currently i am using lower version. I think, it should work for higher version. Thanks for your suggestion.

Iniciar sesión para comentar.

Community Treasure Hunt

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

Start Hunting!

Translated by