R是否提供了一个对象/函数/方法/关键字来获取所有函数参数?
用一个例子:
function(a, b="default", ...)将提供a和b以及...功能的环境中.有没有一种说法类似list(...),这也将包括a与b在结果?
或者换一种方式:list(a=a, b=b, ...)给出一个简写function(a, b, ...)
在R中有一个常见的函数调用模式,如下所示:
child = function(a, b, c) {
a * b - c
}
parent = function(a, b, c) {
result = child(a=a, b=b, c=c)
}
Run Code Online (Sandbox Code Playgroud)
这种重复的名称是有用的,因为如果要更改子项的参数的顺序,或者如果要将其他变量添加到列表中,它可以防止潜在的潜在错误:
childReordered = function(c, b, a) { # same args in different order
a * b - c
}
parent = function(a, b, c) {
result = childReordered(a, b, c) # probably an error
}
Run Code Online (Sandbox Code Playgroud)
但是当参数的名称变长时,这会变得很麻烦:
child = function(longVariableNameA, longVariableNameB, longVariableNameC) {
longVariableNameA * longVariableNameB - longVariableNameC
}
parent = function(longVariableNameA, longVariableNameB, longVariableNameC) {
child(longVariableNameA=longVariableNameA, …Run Code Online (Sandbox Code Playgroud)