try a simple for loop, it will be fast enough in this case, e.g.,

matSums <- function (lis) {
   out <- array(data = 0, dim = dim(lis[[1]]))
   for (i in seq(along = lis))
       out <- out + lis[[i]]
   out
}

a <- b <- c <- d <- matrix(1:4, 2, 2)
l <- list(a, b ,c, d)

matSums(l)


I hope it helps.

Best,
Dimitris

----
Dimitris Rizopoulos
Biostatistical Centre
School of Public Health
Catholic University of Leuven

Address: Kapucijnenvoer 35, Leuven, Belgium
Tel: +32/(0)16/336899
Fax: +32/(0)16/337015
Web: http://med.kuleuven.be/biostat/
    http://www.student.kuleuven.be/~m0390867/dimitris.htm


----- Original Message ----- From: "Shubha Vishwanath Karanth" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Wednesday, June 04, 2008 4:53 PM
Subject: [R] sum of unknown number of matrices


Hi R,



I have a list of matrices. I need to get the sum of all the matrices in
the list.



Example:

a=b=c=d=matrix(1:4,2,2)

l=list(a,b,c,d)





I need:

a+b+c+d

    [,1] [,2]

[1,]    4   12

[2,]    8   16



Something like do.call("+",l) is not working...why is this?





I may not be knowing the number of matrices in the list...



Thanks, Shubha



This e-mail may contain confidential and/or privileged i...{{dropped:13}}

______________________________________________
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.



Disclaimer: http://www.kuleuven.be/cwis/email_disclaimer.htm

______________________________________________
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