Wie trage ich die "nachfolgenden" Zahlen ein, wenn in R eine 0 steht?
Ich habe eine Reihe von Zahlen:
n1 = c(1, 1, 0, 6, 0, 0, 10, 10, 11, 12, 0, 0, 19, 23, 0, 0)
Ich muss die 0 durch die entsprechende Zahl "dahinter" ersetzen, um sie zu erhalten, während ich die 0 im Schwanz alleine lasse (weil nichts direkt dahinter ist):
n2 = c(1, 1, 6, 6, 10, 10, 10, 10, 11, 12, 19, 19, 19, 23, 0, 0)
Wie komme ich von n1 nach n2?
Dies scheint eine viel schwierigere Frage zu sein als die, die ich zuvor gestellt habe:
Wie trage ich die vorhergehenden Zahlen ein, wenn in R eine 0 steht?
wo flodel eine elegante lösung gefunden hat:
n2 <- n1[cummax(seq_along(n1) * (n1 != 0))]
Diese Lösung funktioniert hier jedoch nicht. Ich habe versucht, den Code aber nicht anzupassen.
Kann jemand anderes eine elegante Lösung finden?
Danke im Voraus!