Hmmm, after thinking about it, better see

        ?mapply

SIMPLIFY         logical; attempt to reduce the result to a vector or
                matrix?


Try mapply( ..., SIMPLIFY=FALSE )

HTH,

Chuck

On Mon, 12 Oct 2009, Magnus Torfason wrote:

I have a list of isometric structures, and I want to change the same part of each structure in the list, assigning one element of a vector to each of these parts.

In other words, I want to achieve the following:

 l <- list( list(a=1,b=2), list(a=3,b=4))
 unlist(lapply(l, "[[", "a"))
[1] 1 3

 # This will not actually work
 l[[]]["a"] <- 5:6

 unlist(lapply(l, "[[", "a"))
[1] 5 6

I figure mapply is the solution to the problem, and I tried the following:

 mapply( "[<-", l, "a", 5:6)

But the result is not the same shape as the original.

Any thoughts?

Best,
Magnus

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.



Charles C. Berry                            (858) 534-2098
                                            Dept of Family/Preventive Medicine
E mailto:cbe...@tajo.ucsd.edu               UC San Diego
http://famprevmed.ucsd.edu/faculty/cberry/  La Jolla, San Diego 92093-0901

______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.

Reply via email to