[R] creating named elements of lists on the fly
John Fox
jfox at mcmaster.ca
Fri Oct 8 19:01:43 CEST 2004
Dear Ben,
Is this the kind of thing you had in mind?
> lst <- list()
> element <- "a"
> lst[[element]] <- 1:5
> element <- "b"
> lst[[element]] <- letters[1:5]
> lst
$a
[1] 1 2 3 4 5
$b
[1] "a" "b" "c" "d" "e"
I hope this helps,
John
> -----Original Message-----
> From: r-help-bounces at stat.math.ethz.ch
> [mailto:r-help-bounces at stat.math.ethz.ch] On Behalf Of Ben Shapiro
> Sent: Friday, October 08, 2004 11:46 AM
> To: r-help at stat.math.ethz.ch
> Subject: [R] creating named elements of lists on the fly
>
> HI Folks,
>
> I'm trying to create a list with named elements. Only, I
> don't know the names of the elements a priori (they come from
> the data being calculated). Currently, my approach is to
> create an environment, then assign things to the
> environement, then as.list the environment to get a list.
>
> Running the code gives, for example:
> > e2 <- new.env(FALSE, NULL)
> > assign("dude", 123, env=e2)
> > assign("chick", 456, env=e2)
> > as.list(e2)
> Error in as.vector(x, "list") : cannot coerce to vector
>
> Is this the best way to make a list like this?
>
> Thanks,
> Ben
More information about the R-help
mailing list