Skip to content

sum

3 messages · Liaw, Andy, Roger D. Peng, Tony Plate

#
I believe there's an abind for Splus on StatLib, if I remember correctly by
Tony Plate & Rich Heiberger.  Do not believe it was made available for R,
though I believe it'd be very useful.

[snipped]
Indeed!  (I guess somehow the evil of for loops in the old S in deeply
engrained in some of us.)  Altough I like Sundar's version, too.

Cheers,
Andy


------------------------------------------------------------------------------
Notice: This e-mail message, together with any attachments, cont... {{dropped}}
#
There's an abind() posted by Jonathan Rougier at
http://finzi.psych.upenn.edu/R/Rhelp02/archive/9580.html.  It doesn't look
like the same thing as the one on StatLib but it seems to work.

-roger
_______________________________
UCLA Department of Statistics
http://www.stat.ucla.edu/~rpeng
On Wed, 23 Apr 2003, Liaw, Andy wrote:

            
#
I've been meaning to submit the abind package to CRAN for a long time 
now.  I just did it.
Here's how one could do the matrix-list-sum using abind():

 > library(abind)
 > set.seed(1)
 > m <- lapply(1:3,function(i) matrix(sample(10,8,rep=T),2,4))
 > m
[[1]]
      [,1] [,2] [,3] [,4]
[1,]    1    1    1    4
[2,]    6    7    1    7

[[2]]
      [,1] [,2] [,3] [,4]
[1,]    7   10    1    7
[2,]    7    6    3    2

[[3]]
      [,1] [,2] [,3] [,4]
[1,]   10    6    9    1
[2,]    3    4    2    2

 > a <- do.call("abind", c(m, list(along=3)))
 > apply(a, 1:2, sum)
      [,1] [,2] [,3] [,4]
[1,]   18   17   11   12
[2,]   16   17    6   11
 > m[[1]] + m[[2]] + m[[3]]
      [,1] [,2] [,3] [,4]
[1,]   18   17   11   12
[2,]   16   17    6   11
 > all(apply(a, 1:2, sum) == m[[1]] + m[[2]] + m[[3]])
[1] TRUE
 >

-- Tony Plate
At Wednesday 07:58 PM 4/23/2003 -0400, Liaw, Andy wrote: