【发布时间】:2014-06-20 21:04:26
【问题描述】:
我正在编写一个 R 函数,比如 foo()。我希望能够传入参数的名称和值以在 foo() 内的函数中进行评估。例如:
foo = function(inputArg, inputVal){
return( rnorm(100, inputArg=inputVal) )
}
然后,我可以评估
foo("sd", 2)
并得到一个包含 100 个标准差等于 2 的随机正态值的向量。我该怎么做?
【问题讨论】:
-
非常次要的一点:如果您使用
outer以外的其他内容(例如foo)可能会有所帮助,以明确您指的不是实际该名称的功能。 -
@joran:很好,我已经更新了帖子。
-
如果你不需要需要有两个参数的函数,你可以
foo = function(...) rnorm(100, ...);foo(mean = 10);foo(sd = 10)