Dear Mr. Tuszynski, I would like to request what I believe would be a beneficial update / patch to the runmean() function in the caTools package. Consider the following R>> x = 1:100 R>> is.integer(x) [1] TRUE R>> library(caTools) R>> head(runmean(x, 5, alg="exact")) [1] 8.487983e-314 1.060998e-313 1.273197e-313 1.697597e-313 2.121996e-313 2.546395e-313 R>> head(runmean(x, 5, alg="C")) [1] 2.0 2.5 3.0 4.0 5.0 6.0 R>> head(runmean(as.double(x), 5, alg="C")) [1] 2.0 2.5 3.0 4.0 5.0 6.0 R>> head(runmean(as.double(x), 5, alg="exact")) [1] 2.0 2.5 3.0 4.0 5.0 6.0 As you can see (and can be verified in the code), unlike the call for the "C" algorithm, the "exact" algorithm does not make sure that x is stored as double resulting in occasional unexpected behavior. ## From caTools::runmean if (alg == "exact") { .C("runmean_exact", x, y, as.integer(n), as.integer(k), NAOK = TRUE, DUP = FALSE, PACKAGE = "caTools") } else if (alg == C"){ .C("runmean", as.double(x), y, as.integer(n), as.integer(k), NAOK TRUE, DUP = FALSE, PACKAGE = "caTools") } Thanks once again for the fantastic package, Michael Weylandt cc: R-Help List. [[alternative HTML version deleted]]