[R] unquoting
Murray Jorgensen
maj at stats.waikato.ac.nz
Sun Aug 20 23:26:38 CEST 2006
Thank you, Brian, Peter and Gabor
Brian has what want. My heading was a bit misleading. I was looking for
a function that would, in logicians' terms, convert 'mention' into
'use'. (This usually goes along with the story about the importance of
knowing the difference between a lion and "lion".) get() is just such a
function.
Murray Jorgensen
Prof Brian Ripley wrote:
> ?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
>>
>
--
Dr Murray Jorgensen http://www.stats.waikato.ac.nz/Staff/maj.html
Department of Statistics, University of Waikato, Hamilton, New Zealand
Email: maj at waikato.ac.nz Fax 7 838 4155
Phone +64 7 838 4773 wk Home +64 7 825 0441 Mobile 021 1395 862
More information about the R-help
mailing list