From murdoch.duncan at gmail.com  Fri Jan  6 20:27:36 2012
From: murdoch.duncan at gmail.com (Duncan Murdoch)
Date: Fri, 06 Jan 2012 14:27:36 -0500
Subject: [Rd] seq_along and rep_along
In-Reply-To: <CABdHhvEUtWfj6+2kT6fsD5CYgx66g1+C5gNhdLTA0M60Dw+YbQ@mail.gmail.com>
References: <CABdHhvEUtWfj6+2kT6fsD5CYgx66g1+C5gNhdLTA0M60Dw+YbQ@mail.gmail.com>
Message-ID: <4F074B28.8020307@gmail.com>

On 12-01-06 1:31 PM, Hadley Wickham wrote:
> Hi all,
>
> A couple of ideas for improving seq_along:
>
> * It would be really useful to have a second argument dim:
>
>      seq_along(mtcars, 1)
>      seq_along(mtcars, 2)
>      # equivalent to
>      seq_len(dim(mtcars)[1])
>      seq_len(dim(mtcars)[2])
>
>    I often find myself wanting to iterate over the rows or column of a
> data frame, and there isn't a particularly nice idiom if you want to
> avoid problems with zeros - you have to use seq_len(nrow(df)) etc

I don't see the benefit of seq_along(mtcars, 1) versus seq_len(nrow(df)) 
in readability.

Duncan Murdoch

>
> * To me, it would seem be very natural to have a rep_along function:
>
>    rep_along<- function(x, y) rep(x, length.out = length(y))
>
>    possibly with more checking for the case where the lengths aren't
> integer multiples.
>
> I'd be happy to submit proposed implementations/documentation if there
> was interest.
>
> Hadley
>



[Rd] seq_along and rep_along
Duncan Murdoch