Skip to content
Prev 10167 / 398506 Next

concatenating lists (and functions with multiple args)

Here's another possibility:

foo <- function(x,y){
	if(is.list(x)) x <- as.list(x)
	else x <- list(x)

	if(is.list(y)) y <- as.list(y)
	else y <- list(y)

	c(x,y)
}

The if - else clause unnests a nested list or turns a single vector into a
list.  Leaving either one out causes trouble in this example.  

I've checked that this code also successfully combines xyz with another
vector w. 


Now a follow-up question.  What I'd really like to know how to do (and
haven't been able to figure out from the documentation) is how to write an
equivalent version of this function that takes an arbitrary number of
arguments.  I've looked at the code for (for example) sum, which takes
"..." as an argument, but it just refers to internal code. 

Is there an easy way to do this in R code?  Have I missed some of the
documentation that explains this?

Thanks for any help,

Matt Wiener
On Thu, 15 Mar 2001, Jan Goebel wrote:

            
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !)  To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._