在一篇评论中关于如何“正确”指定 R 中的可选参数的已接受答案,@LouisMaddox 说
missing()
但是,当您想根据列表正确检查提供的参数时,这是无用的。对于一个函数Foo
带参数bar
和可选开关a_or_b
(默认值“a”)你可以写Foo <- function(bar, a_or_b=c("a", "b"))
...
是否有正确/推荐/惯用的方法来根据可能值列表检查提供的参数?
我试着看看graphics::plot.default
并且还瞥见了graphics::par
但无法从这两个函数中获得任何可理解的内容(看看如何type
例如处理参数)。
在这种情况下type
例如,参数,所有可能的值都是单字母字符串,所以我猜在某个地方,有一个很大的switch
声明或一堆if
声明。
如果您有少量选项,请使用match.arg
函数内。看?match.arg
举个例子。
如果有效参数都是单字母字符串,那么您将需要另一种方法,例如:
# returns logical
is_one_letter_string <- function(x) {
!missing(x) && length(x) == 1 && is.character(x) && x %in% c(letters, LETTERS)
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)