Hello,
how can I return the name of a variable, say "a$b", from a function?
fun <- function(x){
return(substitute(x));
}
a <- data.frame(b=1:10);
fun(a$b)
... returns a$b, but this is a type language, thus I can't use it as a
character string, can I? How?
Thanks for help,
S?ren
Hi Sören
Somehow this feels dirty, but you can do
fun <- function(x){
result <- capture.output(print(substitute(x)))
return(result);
}
-Ista
On Fri, Apr 16, 2010 at 5:26 AM, <soeren.vogel@eawag.ch> wrote:
> Hello,
>
> how can I return the name of a variable, say "a$b", from a
function?
>
> fun <- function(x){
> return(substitute(x));
> }
> a <- data.frame(b=1:10);
> fun(a$b)
>
> ... returns a$b, but this is a type language, thus I can't use it as a
> character string, can I? How?
>
> Thanks for help,
>
> Sören
>
> ______________________________________________
> 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.
>
--
Ista Zahn
Graduate student
University of Rochester
Department of Clinical and Social Psychology
http://yourpsyche.org
[[alternative HTML version deleted]]
On 16/04/2010 5:26 AM, soeren.vogel at eawag.ch wrote:> Hello, > > how can I return the name of a variable, say "a$b", from a function?Use deparse(substitute(x)), not just substitute(x). By the way, to be picky, a$b is not the name of a variable. It is an expression that extracts the b element of a. Duncan Murdoch> > fun <- function(x){ > return(substitute(x)); > } > a <- data.frame(b=1:10); > fun(a$b) > > ... returns a$b, but this is a type language, thus I can't use it as a > character string, can I? How? > > Thanks for help, > > S?ren > > ______________________________________________ > R-help at 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.