[R] function in argument
David Winsemius
dwinsemius at comcast.net
Sat Apr 2 00:06:43 CEST 2011
On Apr 1, 2011, at 5:56 PM, array chip wrote:
> 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"
>
Works on my machine.
> foo(matrix(1:100,nrow=5))
1 2 3 4
2 4.472136
3 8.944272 4.472136
4 13.416408 8.944272 4.472136
5 17.888544 13.416408 8.944272 4.472136
You have probably overwritten `dist` with a non-functional object.
Try rm(dist) and re-run:
>
> foo<-function (x,
> xfun = mean)
> {
> xfun(x)
> }
>
> foo(1:10)
> [1] 5.5
>
> what am I missing here?
Thinking about your full workspace, I would guess.
--
David Winsemius, MD
West Hartford, CT
More information about the R-help
mailing list