A rep_each function

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

A rep_each function

Richard Cotton-2
The rep function is very versatile, but that versatility comes at a
cost: it takes a bit of effort to learn (and remember) its syntax.
This is a problem, since rep is one of the first functions many
beginners will come across.  Of the three main uses of rep, two have
simpler alternatives.

rep(x, times = ) has rep.int
rep(x, length.out  = ) has rep_len

I think that a rep_each function would be a worthy addition for the
third use case

rep(x, each = )

(It might also be worth having rep_times as a synonym for rep.int.)

While this could go in a package, since one of its main benefits is to
help beginners, I feel it ought to go in base R.

Before I submit this as a feature request, I thought I'd check here to
see if there was any enthusiasm.  Does rep_len sound useful to you?

--
Regards,
Richie

Learning R <http://shop.oreilly.com/product/0636920028352.do>
4dpiecharts.com

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel
Reply | Threaded
Open this post in threaded view
|

Re: A rep_each function

Hervé Pagès
Hi,

On 03/23/2014 05:42 AM, Richard Cotton wrote:

> The rep function is very versatile, but that versatility comes at a
> cost: it takes a bit of effort to learn (and remember) its syntax.
> This is a problem, since rep is one of the first functions many
> beginners will come across.  Of the three main uses of rep, two have
> simpler alternatives.
>
> rep(x, times = ) has rep.int
> rep(x, length.out  = ) has rep_len
>
> I think that a rep_each function would be a worthy addition for the
> third use case
>
> rep(x, each = )
>
> (It might also be worth having rep_times as a synonym for rep.int.)

I agree that rep_times() would be a much better name. Because rep.int()
looks like an S3 method for rep(), 'R CMD check' emits the following
NOTE on the BiocGenerics package (where rep.int() is turned into an
S4 generic):

   * checking Rd \usage sections ... NOTE
   S3 methods shown with full name in documentation object 'rep':
     ‘rep.int’

   The \usage entries for S3 methods should use the \method markup and not
   their full name.
   See the chapter ‘Writing R documentation files’ in the ‘Writing R
   Extensions’ manual.

Cheers,
H.

>
> While this could go in a package, since one of its main benefits is to
> help beginners, I feel it ought to go in base R.
>
> Before I submit this as a feature request, I thought I'd check here to
> see if there was any enthusiasm.  Does rep_len sound useful to you?
>

--
Hervé Pagès

Program in Computational Biology
Division of Public Health Sciences
Fred Hutchinson Cancer Research Center
1100 Fairview Ave. N, M1-B514
P.O. Box 19024
Seattle, WA 98109-1024

E-mail: [hidden email]
Phone:  (206) 667-5791
Fax:    (206) 667-1319

______________________________________________
[hidden email] mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel