[Rd] HOW TO AVOID LOOPS
h.wickham at gmail.com
Sat Apr 12 23:23:08 CEST 2008
On Sat, Apr 12, 2008 at 11:47 AM, carlos martinez
<martinezbula at earthlink.net> wrote:
> > Looking for a simple, effective a minimum execution time solution.
> > For a vector as:
> > c(0,0,1,0,1,1,1,0,0,1,1,0,1,0,1,1,1,1,1,1)
> To transform it to the following vector without using any loops:
> > (0,0,1,0,1,2,3,0,0,1,2,0,1,0,1,2,3,4,5,6)
> Appreciate any suggetions.
unlist(lapply(split(x, cumsum(x == 0)), seq_along)) - 1
More information about the R-devel