how to wrap a function that only takes individual elements to make it take a list
Posted
by stevejb
on Stack Overflow
See other posts from Stack Overflow
or by stevejb
Published on 2010-04-26T14:18:05Z
Indexed on
2010/04/26
14:23 UTC
Read the original article
Hit count: 295
Hello,
Say I have a function handed to me that I cannot change and must use as is. This function takes several objects in the form of
oldFunction( object1, object2, object3, ...)
where ... are other arguments. I want to write a wrapper to take a list of objects. My idea was this.
sjb.ListWrapper <- function(myList,...) {
lLen <- length(myList)
myStr <- ""
for( i in 1:lLen) {
myStr <- paste(myStr, "myList[[", i , "]],",sep="")
}
myCode <- paste("oldFunction(", myStr, "...)")
eval({myCode})
}
However, the issue is that I want to use this from Sweave and I need the output of oldFunction to be printed. What is the right way to do this?
Thanks.
© Stack Overflow or respective owner