我的问题很简单。
x=list(type="call")
FUN <- function(x=list(type=c("call","put")))
{
x$type=match.arg(x$type)
}
这会返回错误:
> FUN(x)
Error in match.arg(x$type) : 'arg' should be one of “”
有什么想法吗?
答案 0 :(得分:2)
也许这就是你想要的:
FUN <- function(x=list(type=c("call","put")))
{
x$type=match.arg(x$type, c('call', 'put'))
}
> print(FUN())
[1] "call"
> print(FUN(x))
[1] "call"
> print(FUN(list(type="put")))
[1] "put"