Create counter of consecutive runs of a certain value
SOG <- c(4,4,0,0,0,3,4,5,0,0,1,2,0,0,0) #run length encoding: tmp <- rle(SOG) #turn values into logicals tmp$values <- tmp$values == 0 #cumulative sum of TRUE values tmp$values[tmp$values] <- cumsum(tmp$values[tmp$values]) #inverse the run length encoding inverse.rle(tmp) #[1] 0 0 1 1 1 0 0 0 2 2 0 0 3 3 3