This question already has an answer here:
I want to determine whether an object exists inside a function in R:
foo <- function() {
y <- "hello"
if (exists(y, envir = sys.frame())) print(y)
}
foo()
Error in exists(y, envir = sys.frame()) : invalid first argument
I thought adding the envir = sys.frame()
would do the trick. Also tried envir = environment()
Expected
foo()
"hello"
You should have checked ?exists
:
Usage:
exists(x, where = -1, envir = , frame, mode = "any",
inherits = TRUE)
Arguments:
x: a variable name (given as a character string).
Do exists("y")
来源:https://stackoverflow.com/questions/37471992/verify-object-existence-inside-a-function-in-r