将函数从参数传递到嵌套函数

时间:2015-07-16 14:22:26

标签: r scope nested

我简而言之,我想运行以下最小的代码:

library(plyr)

surround = function(my.df, my.var, my.val, my.method) {
    ddply(my.df, my.var, summarize, value = my.method(as.name(my.val)))
}

my.df = data.frame(group = rep(letters[1:4], times = 25),
                   x = rnorm(100))

surround(my.df, "group", "x", mean)

然而,这会导致Error: could not find function "my.method"。我确实意识到这是一个范围问题,我应该使用evalsubstitute,但我无法弄明白。

1 个答案:

答案 0 :(得分:4)

如果使用自定义功能而不是汇总功能,则可以使用。

 ReferenceError: functionToPostParameters is not defined