[R] changing a list element's name during execution in lapply - possible?
David Winsemius
dwinsemius at comcast.net
Fri Jan 1 14:58:11 CET 2010
On Jan 1, 2010, at 8:21 AM, Mark Heckmann wrote:
> Happy New Year, all!
>
> I want to do calculations on each element of a list l, but i want
> the returned list element to be named differently after the
> calculation.
> Is it possible to do the renaming somehow within the lapply call?
>
> l <- list(a=NA, b=NA)
> lapply(l, function(x) {names(x) <- "new name"; return(x) })
>
> This does not work, any ideas?
It did "work" in the sense that it created a list of the same
structure with each node now named "new name". If you want that named
list to become "l", then you need to do an assignment:
l <- lapply(l, function(x) {names(x) <- "new name"; return(x) })
> l
$a
new name
NA
$b
new name
NA
--
David.
> TIA
>
> –––––––––––––––––––––––––––––––––––––––
> Mark Heckmann
> Dipl. Wirt.-Ing. cand. Psych.
> Vorstraße 93 B01
More information about the R-help
mailing list