[R] assigning a list item using a variable for a name
RSVP
paul at ptrow.com
Wed Mar 23 00:47:19 CET 2011
I have a list.
my.list <- list(Tom=c(1,2,3), Dick=c(4,5,6), Harry=c(7,8,9))
I assign one of the names of the list to a variable.
name <- "Harry"
I can access the value of the list using the variable as follows:
eval(parse(text=paste("my.list$", name, sep="")))
[1] 7 8 9
But how do I change the value of my.list$Harry using the variable name? This
doesn't work:
eval(parse(text=paste("my.list$", name, sep=""))) <- c(1,4,7)
Error in eval(parse(text = paste("my.list$", name, sep = ""))) <- c(1, :
target of assignment expands to non-language object
The following only replaces the first element of my.list$Harry
my.list[name] <- c(1,4,7)
Warning message:
In my.list[name] <- c(1, 4, 7) :
number of items to replace is not a multiple of replacement length
> my.list[name]
$Harry
[1] 1
Any suggestions?
Thanks.
--
View this message in context: http://r.789695.n4.nabble.com/assigning-a-list-item-using-a-variable-for-a-name-tp3398084p3398084.html
Sent from the R help mailing list archive at Nabble.com.
More information about the R-help
mailing list