[R] Passing parameters in a user defined function to another function using ...

Ben Tupper btupper at bigelow.org
Tue Nov 19 03:00:05 CET 2013


Hi,

It's easy, just carry the arguments in '…' forward to where you expect to pass them along.


mynumbs<-function(x,y,z=5,...){
 numbs<-sort(sample(y,z, ...))
 for (i in 1:(x-1))
   numbs<-rbind(numbs,sort(sample(y,z, ...)))
 print(numbs)
}

Cheers,
Ben


On Nov 18, 2013, at 8:52 PM, "Lopez, Dan" <lopez235 at llnl.gov> wrote:

> Hi R Experts,
> 
> How do you get the ... to work in a user-defined function such as the one I have below?
> For example if I want to pass replace=TRUE to the sample function.
> 
> # This is a sample function that generates x rows of z numbers out of y. Basically a lottery style data set.
> 
> mynumbs<-function(x,y,z=5,...){
>  #x should be a scalar indicating number of rows
>  #y & z are passed to sample function
>  #in the future will add option to output as data.frame instead of matrix
> 
>  numbs<-sort(sample(y,z))
>  for (i in 1:(x-1))
>    numbs<-rbind(numbs,sort(sample(y,z)))
>  print(numbs)
> }
> 
> 	[[alternative HTML version deleted]]
> 
> ______________________________________________
> R-help at 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.

Ben Tupper
Bigelow Laboratory for Ocean Sciences
60 Bigelow Drive, P.O. Box 380
East Boothbay, Maine 04544
http://www.bigelow.org



More information about the R-help mailing list