将函数分配给R中的变量

Posted

技术标签:

【中文标题】将函数分配给R中的变量【英文标题】:assign a function to a variable in R 【发布时间】:2013-07-25 02:41:44 【问题描述】:

问题在标题中。我想做这样的事情:

myfunc<- pexp
plot(function(x) myfunc(x, 0.5))

我想调用脚本中作为参数给出的几个函数。我想使用 foreach 而不是一堆 if-then-else 语句:

假设我这样调用我的脚本:

R --slave -f script.R --args plnorm pnorm 

我想做这样的事情:

#only get parameters after --args
args<-commandArgs(trailingOnly=TRUE)
for i in args 
    plot(function(x) i(x,param1,param2))

【问题讨论】:

【参考方案1】:

使用get 检索给定包含其名称的字符串的对象。在这种情况下,您也可以使用getFunction,特定版本来检索函数。

for f in args 
     f <- getFunction(f)
     plot(function(x) f(x, param1, param2))

【讨论】:

以上是关于将函数分配给R中的变量的主要内容,如果未能解决你的问题,请参考以下文章

将递归函数分配给python中的变量

将 Future 类型化结果从函数分配给 Flutter Widget 中的变量

将数据从一个函数分配给另一个函数

将函数分配给变量

将JavaScript函数分配给变量的效果[重复]

将类的成员函数分配给 C++ 中的函数指针