[Rd] list comprehension to create an arbitrary-sized list with arbitrary names/values
Olaf Mersmann
olafm at statistik.tu-dortmund.de
Wed Oct 13 21:34:24 CEST 2010
Hi,
On 13.10.2010, at 21:26, Steve Kim wrote:
> mydict = dict([(keyfun(x), valfun(x)) for x in mylist])
>
> to create a dictionary with whatever keys and values we want from an
> input list of arbitrary size. In R, I want to similarly create a list
> with names/values that are generated by some keyfun and valfun
> (assuming that keyfun is guaranteed to return something suitable as a
> name). How can I do this?
Try something like this:
mydict <- lapply(mylist, valfun)
names(mydict) <- sapply(mylist, keyfun)
or
mydict <- structure(lapply(mylist, valfun), names=sapply(mylist, keyfun))
Cheers
Olaf
More information about the R-devel
mailing list