¿Cómo completar los números "siguientes" siempre que haya un 0 en R?
Tengo una serie de números:
n1 = c(1, 1, 0, 6, 0, 0, 10, 10, 11, 12, 0, 0, 19, 23, 0, 0)
Necesito reemplazar 0 con el número correspondiente "detrás" para obtenerlo, dejando los 0 en la cola solos (porque no hay nada detrás de ellos):
n2 = c(1, 1, 6, 6, 10, 10, 10, 10, 11, 12, 19, 19, 19, 23, 0, 0)
¿Cómo puedo pasar de n1 a n2?
Esta parece ser una pregunta mucho más difícil que la que hice antes:
¿Cómo completar los números anteriores siempre que haya un 0 en R?
donde flodel ha encontrado una solución elegante:
n2 <- n1[cummax(seq_along(n1) * (n1 != 0))]
Sin embargo, esta solución no funciona aquí; He intentado pero no he podido adaptar el código.
¿Alguien más puede encontrar una solución elegante?
¡Gracias por adelantado!