See ?deparse .  E.g. (with several stylistic improvements)

func <- function(a)
    cat(sprintf("Anova for variable %s\n",
        sQuote(deparse(substitute(a)))))
func(Age)

Note that you expliciltly do not want the *vaiue* of 'a', but the symbol passed. That is non-standard behaviour, and you might want to consider why func("Age") is not a better way to do this.

On Sun, 20 Jul 2008, willemf wrote:


Does anyone know of good reading material about the following? The R language
definition does not appear to explicitly address my problem (maybe I misread
that document?)

'S Programming' (see the R FAQ).

I have a function definition:

Well, that is not a function definition: please do use correct and reproducible examples as the posting guide asks.


func(a)
 cat("Anova for variable ",a)

What I wish to achieve is to call func with a value such as:
func(Age)

and then obtain:

Anova for variable Age

Using "names(formals())" inside function func yields "a". That is not what I
need. I need the name contained in a, which in this case is Age.

Thanks for your time.
Willemf


--
Brian D. Ripley,                  [EMAIL PROTECTED]
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

______________________________________________
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.

Reply via email to