Hello all,

I would like to extract the variable name passed into a specific argument of
a function.
Using match.call() will give me a list of arguments and what was passed into
them, but I couldn't find how to get a particular argument out of it (at
least without using some string manipulation).

Here is an example (in it, my objective is to know what is the variable name
assigned to the argument "b"):

foo <- function(a, b, c)
{
print(match.call())
}
x = 1 ; y = 1
foo(x, y)  # here the answer should be "y"
foo(c= x, y)  # here the answer should be "" (or NULL/NA)


Any suggestion on how to do this?


BTW, the purpose of this is to be able to avoid the error produced by, for
example, this:

yy <- data.frame(y = 1:10, x = 1:10)
plot(y, data = yy) # error
plot(y~x, data = yy) # no error...




Thanks,
Tal



----------------Contact
Details:-------------------------------------------------------
Contact me: Tal.Galili@gmail.com |  972-52-7275845
Read me: www.talgalili.com (Hebrew) | www.biostatistics.co.il (Hebrew) |
www.r-statistics.com (English)
----------------------------------------------------------------------------------------------

	[[alternative HTML version deleted]]

