On Tue, Apr 9, 2013 at 7:31 AM, Harry Mamaysky <h.mamay...@gmail.com> wrote: > Thanks for the explanations. > > Wouldn't the following bit of checking in do.call() make it easier to figure > such things out in the future? > Sure, it would have helped you figure out your issue, but you don't want a *warning* when you purposefully try to set named function arguments. I.e., what if you want to set a function argument to something other than its default value? Do you really want a warning when you do that?
> > my.call <- function(what,args,...) { > > ## Get the name of the function to call. > if (!is.character(what)) > whatStr <- deparse(substitute(what)) > else > whatStr <- what > > callFctn <- paste0(gsub(paste0('.',class(args[[1]])),'',whatStr), '.', > class(args[[1]])) > > ## Check whether list names are arguments to the function. > if ( any( names(args) %in% names(formals(callFctn)) ) ) > warning( 'Element of "args" is also an argument for ', callFctn, '.' ) > > ## Do the actual call. > do.call( what, args, ... ) > } > > Sent from my iPhone > > On Apr 8, 2013, at 7:23 PM, Gabor Grothendieck <ggrothendi...@gmail.com> > wrote: > > On Mon, Apr 8, 2013 at 3:54 PM, Harry Mamaysky <h.mamay...@gmail.com> wrote: >> Can someone explain why this happens when one of the list elements is named >> 'all'? >> >>> zz <- list( zoo(1:10,1:10), zoo(101:110,1:10), zoo(201:210,1:10) ) >>> names(zz)<-c('test','bar','foo') >>> do.call(cbind,zz) >> test bar foo >> 1 1 101 201 >> 2 2 102 202 >> 3 3 103 203 >> 4 4 104 204 >> 5 5 105 205 >> 6 6 106 206 >> 7 7 107 207 >> 8 8 108 208 >> 9 9 109 209 >> 10 10 110 210 >>> names(zz)<-c('test','all','foo') >>> do.call(cbind,zz) >> test foo >> 1 1 201 >> 2 2 202 >> 3 3 203 >> 4 4 204 >> 5 5 205 >> 6 6 206 >> 7 7 207 >> 8 8 208 >> 9 9 209 >> 10 10 210 > > all= is an argument to cbind.zoo so it cannot be used as a column name. > >> args(zoo:::cbind.zoo) > function (..., all = TRUE, fill = NA, suffixes = NULL, drop = FALSE) > NULL > > -- > Statistics & Software Consulting > GKX Group, GKX Associates Inc. > tel: 1-877-GKX-GROUP > email: ggrothendieck at gmail.com > -- Joshua Ulrich | about.me/joshuaulrich FOSS Trading | www.fosstrading.com R/Finance 2013: Applied Finance with R | www.RinFinance.com ______________________________________________ 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.