Anwenden von Cumsum auf binären Vektor

Ich habe einen einfachen binären Vektora was ich versuche, in Vektor zu übersetzenb mit der R-Funktioncumsum. Jedoch,cumsum Gibt den Vektor nicht genau zurückb.

Hier ist ein Beispiel:

a <- c(1,0,0,0,1,1,1,1,0,0,1,0,0,0,1,1)

b <- c(1,2,2,2,3,4,5,6,7,7,8,9,9,9,10,11)

> cumsum(a)
[1] 1 1 1 1 2 3 4 5 5 5 6 6 6 6 7 8

Das Problem ist, dass immer eine 0 im Vektor erscheinta dann sollte die vorherige Zahl nur für die erste 0 um 1 erhöht werden. Die übrigen erhalten den gleichen Wert.

Jeder Rat wäre toll! :-)

Antworten auf die Frage(1)

Ihre Antwort auf die Frage