[R] Effeciently sum 3d table

David A Vavra davavra at verizon.net
Mon Apr 16 20:43:00 CEST 2012


Thanks Petr,

I'm after T1 + T2 + T3 + ... and your solution is giving a list of n items
each containing sum(T[i]). I guess I should have been clearer in stating
what I need.

Cheers,
DAV	



-----Original Message-----
From: r-help-bounces at r-project.org [mailto:r-help-bounces at r-project.org] On
Behalf Of Petr Savicky
Sent: Monday, April 16, 2012 11:07 AM
To: r-help at r-project.org
Subject: Re: [R] Effeciently sum 3d table

On Mon, Apr 16, 2012 at 10:28:43AM -0400, David A Vavra wrote:
> I have a large number of 3d tables that I wish to sum
> Is there an efficient way to do this? Or perhaps a function I can call?
> 
> I tried using do.call("sum",listoftables) but that returns a single value.

> 
> So far, it seems only a loop will do the job.

Hi.

Use lapply(), for example

  listoftables <- list(array(1:8, dim=c(2, 2, 2)), array(2:9, dim=c(2, 2,
2)))
  lapply(listoftables, sum)

  [[1]]
  [1] 36

  [[2]]
  [1] 44

Hope this helps.

Petr Savicky.

______________________________________________
R-help at 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.



More information about the R-help mailing list