Yearly aggregates and matrices
On Wed, Apr 27, 2011 at 2:03 PM, mathijsdevaan <mathijsdevaan at gmail.com> wrote:
Hi, Is there an alternative to "z <- read.zoo(DF, split = 2, index = 3, FUN = identity)" and "r <- rollapply(z, 3, ?sum.na, align = "right", partial = TRUE)"? I am trying to use the following script in which the split data (B) contains about 300000 unique cases and obviously I am getting an allocation error. Thanks!
You could test the speed of this to see if its faster:
library(reshape2)
library(zoo)
mm <- melt(DF, id = c("B", "C"))
aa <- acast(mm, C ~ B + variable, FUN = sum)
sum.na <- function(x) if (any(!is.na(x))) sum(x, na.rm = TRUE) else NA
r <- rollapply(aa, 3, sum.na, align = "right", partial = TRUE)
Statistics & Software Consulting GKX Group, GKX Associates Inc. tel: 1-877-GKX-GROUP email: ggrothendieck at gmail.com