Or yet another way which is (I think) a bit closer to your requirement... f <- function(x) { if (missing(x)) cat("x is missing \n") else cat("x was provided \n") }
g <- function(x) { if (missing(x)) fcall <- call("f") else fcall <- call("f", x) eval(fcall) } On 13 November 2010 20:24, Michael Bedward <michael.bedw...@gmail.com> wrote: > Hello Marius, > > NULL is not the same as missing. You could something like this in > various ways. Here are a couple... > > g <- function(x) { > if (missing(x)) { > f() > } else { > f(x) > } > } > > or change f to detect null args > > g <- function(x) { > if (missing(x)) { > x <- NULL > } > > f(x) > } > > f <- function(x) { > if (missing(x) | is.null(x)) { > // do something > } > } > > > Michael > > > On 13 November 2010 19:14, Marius Hofert <m_hof...@web.de> wrote: >> Dear expeRts, >> >> I would like to call a function f from a function g with or without an >> argument. >> I use missing() to check if the argument is given. If it is not given, can I >> set >> it to anything such that the following function call (to f) behaves as if >> the argument >> isn't given? It's probably best described by a minimal example (see below). >> >> The reason why I want to do this is, that I do not have to distinguish >> between the >> cases when the argument is given or not. By setting it to something (what?) >> in the >> latter case, I can use the same code in the subsequent part of the function. >> >> Cheers, >> >> Marius >> >> >> >> f <- function(x) if(missing(x)) print("f: missing x") else print(x) >> >> g <- function(x){ >> if(missing(x)){ >> print("g: missing x") >> x <- NULL # I try to set it to something here such that... >> } >> f(x) # ... this call to f behaves like f() >> } >> >> g() # should print "f: missing x" (is this possible?) >> ______________________________________________ >> R-help@r-project.org mailing list >> https://stat.ethz.ch/mailman/listinfo/r-help >> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html >> and provide commented, minimal, self-contained, reproducible code. >> > ______________________________________________ R-help@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.