Re: [R] Help needed understanding eval,quote,expression

From: Prof Brian Ripley <ripley_at_stats.ox.ac.uk>
Date: Thu 29 Jun 2006 - 18:14:02 EST

You are missing eval(parse(text=)). E.g.

> x <- list(y=list(y1="hello",y2="world"),z=list(z1="foo",z2="bar"))
(what do you mean by the $ at the start of these lines?)
> eval(parse(text="x$y$y1"))
[1] "hello"

However, bear in mind

> fortune("parse")

If the answer is parse() you should usually rethink the question.

In your indicated example you could probably use substitute() as effectively.

On Wed, 28 Jun 2006, toby_marks@americancentury.com wrote:

> I am trying to build up a quoted or character expression representing a
> component in a list in order to reference it indirectly.
> For instance, I have a list that has data I want to pull, and another list
> that has character vectors and/or lists of characters containing the names
> of the components in the first list.
>
>
> It seems that the way to do this is as evaluating expressions, but I seem
> to be missing something. The concept should be similar to the snippet
> below:
>
>
> For instance:
>
> $x = list(y=list(y1="hello",y2="world"),z=list(z1="foo",z2="bar"))
> $y = quote(x$y$y1)
> $eval(y)
> [1] "hello"
>
>
> but, I'm trying to accomplish this by building up y as a character and
> then evaluating it, and having no success.
>
> $y1=paste("x$y$","y1",sep="")
> $y1
> [1] "x$y$y1"
>
>
> How can I evaluate y1 as I did with y previously? or can I?
>
>
> Much Thanks !
>
>
>
>
>
>
>
>
> ------------------------------------------------------------
> CONFIDENTIALITY NOTICE: This electronic mail transmission (i...{{dropped}}
>
> ______________________________________________
> R-help@stat.math.ethz.ch mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
>

-- 
Brian D. Ripley,                  ripley@stats.ox.ac.uk
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@stat.math.ethz.ch mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html
Received on Thu Jun 29 21:37:41 2006

Archive maintained by Robert King, hosted by the discipline of statistics at the University of Newcastle, Australia.
Archive generated by hypermail 2.1.8, at Thu 29 Jun 2006 - 22:12:36 EST.

Mailing list information is available at https://stat.ethz.ch/mailman/listinfo/r-help. Please read the posting guide before posting to the list.