缺少参数时停止R中的函数执行

时间:2019-02-25 23:35:37

标签: r function

我有一个带有3个必需参数的用户定义R函数

func <- function(x, y, z) {
    some code... 
}

万一一个参数被意外地从函数调用中排除,我只需按以下方式调用stop()

if (missing(x)) {
 stop("Please provide a value for x.")
}

if (missing(y)) {
 stop("Please provide a value for y.")
}

if (missing(z)) {
 stop("Please provide a value for z.")
}

要检查它是否确实有效,我执行了以下操作:

func(y, z) # x missing
func(x, z) # y missing 
func(x, y) # z missing

但是,只有上面的最后一个函数调用返回正确的消息。前两个函数都返回“请提供z的值”。

在这些呼叫中没有z时怎么办?

0 个答案:

没有答案
相关问题