我想知道如何在函数内部对它们应用更多操作之前检查传递给函数的变量是否存在。因此,如果找不到变量,可以使用 if-else 语句将其忽略。这是一个示例代码。请注意,变量的名称是使用“paste0”函数构造的。这是因为它们必须稍后被送入循环,为了简化,我省略了剩余的操作。
existence = function(x1, x2, x3, x4) {
for (i in 1:4){
varName <-paste0("x", i)
# Check if a defined variable is passed into the function
if(exists(varName)){
message(varName, " is defined")
} else {
message(varName, " is NOT defined")
}
}
}
定义的变量只有 b 和 c。变量 a 未定义。但是,它被传递到函数中。“存在”函数还必须打印“未定义”消息,以防将 NULL 变量传递给它。
b <- 10
c <- 5
existence(a, b, NULL, c)
我使用的“存在”功能没有给出正确的答案。我希望答案是:
x1 is Not defined
x2 is defined
x3 is Not defined
x4 is defined