[R] Can elements of a list be passed as multiple arguments?

Peng Yu pengyu.ut at gmail.com
Wed Dec 9 05:37:58 CET 2009


I want to split a matrix, where both 'u' and 'w' are results of
possible ways. However, whenever 'n' changes, the argument passed to
mapply() has to change. Is there a way to pass elements of a list as
multiple arguments?

m=10
n=2
k=3

set.seed(0)
x=replicate(n,rnorm(m))
f=sample(1:k, size=m, replace=T)

u=split(as.data.frame(x),f)

v=lapply(
    1:dim(x)[[2]]
    , function(i) {
      split(x[,i],f)
    }
    )

w=mapply(
    function(x,y) {
      cbind(x,y)
    }
    , v[[1]], v[[2]]
    )




More information about the R-help mailing list