[R] unquoting
Prof Brian Ripley
ripley at stats.ox.ac.uk
Sun Aug 20 13:32:11 CEST 2006
?get
I really think this has nothing to do with `quoting', rather to do with
evaluating variables from their names. At first I though you were looking
for noquote(), which does unquote in the conventional sense.
> noquote(names(AF)[2])
[1] Second
> get(names(AF)[2])
[1] 3 4
On Sun, 20 Aug 2006, Murray Jorgensen wrote:
> I would like a function to strip quotes off character strings. I should
> work like this:
>
> > A <- matrix(1:6, nrow = 2, ncol=3)
> > AF <- as.data.frame(A)
> > names(AF) <- c("First","Second","Third")
> > AF
> First Second Third
> 1 1 3 5
> 2 2 4 6
> > names(AF)[2]
> [1] "Second"
> > attach(AF)
> > unquote(names(AF)[2])
> [1] 3 4
>
> Of course what I actually get is
>
> Error: couldn't find function "unquote"
>
> The reason that I want to do this is that I have a frame with a rather
> large number of variables and I would like to loop over the names and
> print out various descriptive summaries of the variable's distribution.
>
> OK, OK, I could just go
>
> > AF[,2]
> [1] 3 4
>
> but once I thought of unquoting I have some sort of inner need to know
> how to do it!
>
> Cheers,
>
> Murray
>
--
Brian D. Ripley, ripley at 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
More information about the R-help
mailing list