[R] how to 'get' an object that is part of a list

Christos Hatzis christos at nuverabio.com
Sun Dec 24 06:06:05 CET 2006


This might be an trivial thing but I am stuck.

Consider: 
 
xx <- list(a=1:5, b=letters[1:5])
 
Although object xx is accessible through its name,
how can object xx$b be accessed similarly through its name?
 
> get("xx")
$a
[1] 1 2 3 4 5

$b
[1] "a" "b" "c" "d" "e"

> get("xx$b")
Error in get(x, envir, mode, inherits) : variable "xx$b" was not found
 
get("xx")$b will not work in my case because it will probably require
parsing to make it work within a function. E.g.

my.length <- function(...) {
	names <- as.character(substitute(list(...)))[-1]
	sapply(names, FUN=function(x){y <- get(x); length(y)})
}
> my.length(xx)
xx 
 2 
> my.length(xx$a)
Error in get(x, envir, mode, inherits) : variable "xx$a" was not found
> my.length(xx$a, xx$b)
Error in get(x, envir, mode, inherits) : variable "xx$a" was not found
	
Thank you.
 
Christos Hatzis, Ph.D.
Nuvera Biosciences, Inc.
400 West Cummings Park
Suite 5350
Woburn, MA 01801
Tel: 781-938-3830
www.nuverabio.com



More information about the R-help mailing list