列出函数中的函数

时间:2014-02-12 06:58:48

标签: r function

R中是否有方法列出给定函数中包含的函数?

例如,在下面的代码中:

myFun <- function(x) { 
  res <- list(m1=mean(x), s1=sd(x), mi=min(x))
  return(res)
}

如何从函数myFun中提取所用函数的名称。在这种情况下,我想要一个带均值,sd和min的矢量。

我想在不必调用函数的情况下执行此操作(否则Rprof()将执行此操作。)

1 个答案:

答案 0 :(得分:8)

通过devtools和github安装pryr

require(devtools)
install_github("hadley/pryr")

然后简单地走进Mordor:

fun_calls(myFun)
[1] "{"      "<-"     "list"   "mean"   "sd"     "min"    "return"

注意有多少功能超出预期,因为R中的功能太多了。您可以随意应用额外的逻辑来删除您不感兴趣的常见内容,例如{<-(当您使用=进行分配时获得的内容)和{{ 1}}(如果你有一个子集你得到的)。