Here's a link (on my local CRAN)... http://cran.stat.auckland.ac.nz/doc/manuals/r-release/R-intro.html#The-three-dots-argument
-----Original Message----- From: r-help-boun...@r-project.org [mailto:r-help-boun...@r-project.org] On Behalf Of Bert Gunter Sent: Friday, 18 January 2013 4:54a To: ivan.calan...@u-bourgogne.fr Cc: R list Subject: Re: [R] how to use "..." Well.. On Thu, Jan 17, 2013 at 7:42 AM, Ivan Calandra <ivan.calan...@u-bourgogne.fr> wrote: > Ok, it is that simple... Actually I had tried it but messed up so that it > didn't work. > Do you know where I can find some documentation about it? The "R language definition" manual would be the logical place to look, no? And sure enough, it's there! The Introduction to R tutorial also contains info in the "writing functions" section. A very good, though now dated, exposition can be found in V&R's S Programming book. Although a little care is needed due to age, it's still my favorite. -- Bert > > Regarding return(), I know that it's not necessary, but when the function > gets more complicated, I like to have it because it becomes clearer to me. > > Thanks all! > Ivan > > -- > Ivan CALANDRA > Université de Bourgogne > UMR CNRS/uB 6282 Biogéosciences > 6 Boulevard Gabriel > 21000 Dijon, FRANCE > +33(0)3.80.39.63.06 > ivan.calan...@u-bourgogne.fr > http://biogeosciences.u-bourgogne.fr/calandra > > Le 17/01/13 15:55, R. Michael Weylandt a écrit : >> >> On Thu, Jan 17, 2013 at 2:36 PM, Ivan Calandra >> <ivan.calan...@u-bourgogne.fr> wrote: >>> >>> Dear users, >>> >>> I'm trying to learn how to use the "...". >>> >>> I have written a function (simplified here) that uses doBy::summaryBy(): >>> # 'dat' is a data.frame from which the aggregation is computed >>> # 'vec_cat' is a integer vector defining which columns of the data.frame >>> should be use on the right side of the formula >>> # 'stat_fun' is the function that will be run to aggregate >>> stat.group <- function(dat, vec_cat, stat_fun){ >>> require(doBy) >>> df <- >>> >>> summaryBy(as.formula(paste0(".~",paste0(names(dat)[vec_cat],collapse="+"))), >>> data=dat, FUN=stat_fun) >>> return(df) >>> } >>> [SNIP EXAMPLE -- THANK YOU FOR IT] >>> >>> Now summaryBy() has an "..." argument and I would like to use it. >>> For example, I would like to be able to add the trim argument to my call >>> like this: >>> stat.group(dat=my_data, vec_cat=1, stat_fun=mean, trim=0.2) >>> >>> >> Thanks for the great working examples! >> >> It's actually not too hard here -- just pass "..." down as if it were >> an argument and let summaryBy() do the hard work of actually handling >> the dots: >> >> stat.group <- function(dat, vec_cat, stat_fun, ...){ >> require(doBy) >> df <- >> summaryBy(as.formula(paste0(".~",paste0(names(dat)[vec_cat],collapse="+"))), >> data=dat, FUN=stat_fun, ...) >> return(df) >> } >> >> Also, note that as a matter of style, you can actually clean this up a >> little bit: R follows the trend of many functional languages in >> automatically returning the value of the last expression evaluated: >> >> stat.group <- function(dat, vec_cat, stat_fun, ...){ >> require(doBy) >> >> summaryBy(as.formula(paste0(".~",paste0(names(dat)[vec_cat],collapse="+"))), >> data=dat, FUN=stat_fun, ...) >> } >> >> Cheers, >> Michael >> > > ______________________________________________ > 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. -- Bert Gunter Genentech Nonclinical Biostatistics Internal Contact Info: Phone: 467-7374 Website: http://pharmadevelopment.roche.com/index/pdb/pdb-functional-groups/pdb-biostatistics/pdb-ncb-home.htm ______________________________________________ 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.