Here is one other solution: x <- 0:1 times <- 3:6 rep(x + 0*times, times)
This solution also works if the length of times is not a whole number of lengths of x but in that case it does give a warning which seems reasonable since that is the way recycling in R works elsewhere too. On Mon, Oct 20, 2008 at 5:17 PM, Gabor Grothendieck <[EMAIL PROTECTED]> wrote: > Try this: > > with(data.frame(x = 0:1, times = 3:6), rep(x, times)) > > or even shorter: > > do.call(rep, data.frame(x = 0:1, times = 3:6)) > > > On Mon, Oct 20, 2008 at 4:57 PM, Ted Harding > <[EMAIL PROTECTED]> wrote: >> Hi Folks, >> I'm wondering if there's a compact way to achieve the >> following. The "dream" is that, by analogy with >> >> rep(c(0,1),times=c(3,4)) >> # [1] 0 0 0 1 1 1 1 >> >> one could write >> >> rep(c(0,1),times=c(3,4,5,6)) >> >> which would produce >> >> # [1] 0 0 0 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 >> >> in effect "recycling" x through 'times'. >> >> The objective is to produce a vector of alternating runs of >> 0s and 1s, with the lengths of the runs supplied as a vector. >> Indeed, more generally, something like >> >> rep(c(0,1,2), times=c(1,2,3,2,3,4)) >> # [1] 0 1 1 2 2 2 0 0 1 1 1 2 2 2 2 >> >> Suggestions appreciated! With thanks, >> Ted. >> >> -------------------------------------------------------------------- >> E-Mail: (Ted Harding) <[EMAIL PROTECTED]> >> Fax-to-email: +44 (0)870 094 0861 >> Date: 20-Oct-08 Time: 21:57:15 >> ------------------------------ XFMail ------------------------------ >> >> ______________________________________________ >> R-help@r-project.org mailing list >> https://stat.ethz.ch/mailman/listinfo/r-help >> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html >> and provide commented, minimal, self-contained, reproducible code. >> > ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.