【发布时间】:2012-03-27 03:48:25
【问题描述】:
有没有办法比较两个函数对象是否相同?
m <- mean
m == mean ## don't work
## this seems not to be the correct way:
functionBody(mean)==functionBody(m)
编辑:更多细节。我有一个带有两个参数的函数(一个矩阵和一个按列应用的用户定义函数,例如均值、中值、...)。如果函数是mean,我想改用colMean(以节省一些运行时间)。
foo <- function(m, fun) {
#if (fun==mean) {
# return(colMeans(m));
#} else {
return(apply(m, 2, fun));
#}
}
【问题讨论】:
-
你对“等函数”的定义是什么?如果您的意思是明显等效,那么您的问题是无法确定的!
-
您可能会发现this 的问题很有帮助。
-
@BasileStarynkevitch 请查看我的编辑。