[R] Using a number as a name to access a list

michael watson (IAH-C) michael.watson at bbsrc.ac.uk
Thu Feb 10 14:35:56 CET 2005


Hi

Dumb question time again, for which I apologise.

I have a variable that contains the following numerical text "04010".
This is the name to access a list:

> as.list(KEGGPATHID2NAME)$"04010"
[1] "MAPK signaling pathway"

Marvellous!  Except I want to do that when "04010" is assigned to a
variable called path and I can't figure out how to do it!

> path <- "04010"
>
> # the original and best
> as.list(KEGGPATHID2NAME)$"04010"
[1] "MAPK signaling pathway"
>
> # clearly this doesn't, and shouldn't, work
> as.list(KEGGPATHID2NAME)$path
NULL
>
> # this produces a string...
> eval(paste("as.list(KEGGPATHID2NAME)$",path,sep=''))
[1] "as.list(KEGGPATHID2NAME)$04010"
>
> # as does this
> eval(paste('as.list(KEGGPATHID2NAME)$"',path,'"',sep=''))
[1] "as.list(KEGGPATHID2NAME)$\"04010\""
>

Whats really annoying is that when everyone mails me the answer, I'm
going to have known how obvious it is.... Thanks in advance

Mick
Village Idiot




More information about the R-help mailing list