Dear all,

I wrote some functions using the special argument '...'. OK, it works.

But if I call such a function which also called such a function, then  
I get an error message about unused arguments.

Here's an example:

fun1 <- function(x,a=1)
{
        print(paste("x=",x))
        print(paste("a=",a))
}
fun2 <- function(y,b=2)
{
        print(paste("y=",y))
        print(paste("b=",b))
}
myfun <- function(c, ...)
{
        print(paste("c=",c))
        fun1(x=c,...)
        fun2(y=c,...)
}

This is OK.
 > myfun(c=3)
[1] "c= 3"
[1] "x= 3"
[1] "a= 1"
[1] "y= 3"
[1] "b= 2"

 > myfun(c=3,a=4)
[1] "c= 3"
[1] "x= 3"
[1] "a= 4"
Error in fun2(y = c, ...) : unused argument(s) (a ...)

I understand the error message because fun2 has no argument called 'a'.

But how can I avoid this???

I want to use this in order to be able to call myfun() with all  
arguments to control myfun(),fun1(), and fun2().

Please help!

Thanks,

Hans

______________________________________________
[email protected] 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.

Reply via email to