OK, I figured it out, need to add stats::: before dist

foo<-function (x,
    xfun = stats:::dist) 
{
xfun(x)
}


John


________________________________

To: r-help@r-project.org
Sent: Fri, April 1, 2011 2:56:06 PM
Subject: [R] function in argument

Hi, I tried to pass the function dist() as an argument, but got an error 
message. However, almost the same code with mean() as the function to be passed, 

it works ok.

foo<-function (x,
    xfun = dist) 
{
xfun(x)
}

foo(matrix(1:100,nrow=5))
Error in foo(matrix(1:100, nrow = 5)) : could not find function "xfun"


foo<-function (x,
     xfun = mean) 
{
  xfun(x)
}

foo(1:10)
[1] 5.5

what am I missing here?

Thanks

John

    [[alternative HTML version deleted]]

______________________________________________
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.

	[[alternative HTML version deleted]]

