【发布时间】:2019-05-09 06:20:26
【问题描述】:
我目前正在编写一个函数,如果满足条件,我想传递默认参数。如果不满足条件,则不应传递任何参数。我怎样才能做到这一点? 我在这个最小的示例中使用 ifelse 和 NULL 进行了尝试,但它不起作用:
my_function <- function(.data,
.variable = ifelse("var1" %in% names(.data), "var1", NULL)){
...
}
如果“var1”不是 .data 的变量名,并且我没有在 .variable 上传递另一个参数,我想得到一个错误,例如“缺少参数”.variable,没有默认值”。我的解决方案有效,但我收到其他错误消息。
【问题讨论】:
标签: r function parameter-passing