Hi,
May be it is a basic thing but I would like to know if we can anticipate round-off errors sign. Here is an example : # numerical matrix m <- matrix(data=cbind(rnorm(10, 0), rnorm(10, 2), rnorm(10, 5)), nrow=10, ncol=3) > m [,1] [,2] [,3] [1,] 0.4816247 1.1973502 3.855641 [2,] -1.2174937 0.7356427 4.393279 [3,] 0.8504074 2.5286509 2.689196 [4,] 1.8048642 1.8580804 6.665237 [5,] -0.6749397 1.0944277 4.838608 [6,] 0.8252034 1.5595268 3.681695 [7,] 1.3002208 0.9582693 4.561577 [8,] 1.6950923 3.5677921 6.005078 [9,] 0.6509285 0.9025964 5.082288 [10,] -0.5676040 1.3281102 4.446451 #weird moving average of period 1 ! mma <- apply(m, 2, SMA, n=1) > mma [,1] [,2] [,3] [1,] NA NA NA [2,] -1.2174937 0.7356427 4.393279 [3,] 0.8504074 2.5286509 2.689196 [4,] 1.8048642 1.8580804 6.665237 [5,] -0.6749397 1.0944277 4.838608 [6,] 0.8252034 1.5595268 3.681695 [7,] 1.3002208 0.9582693 4.561577 [8,] 1.6950923 3.5677921 6.005078 [9,] 0.6509285 0.9025964 5.082288 [10,] -0.5676040 1.3281102 4.446451 #difference should be 0 but here is the result > m - mma [,1] [,2] [,3] [1,] NA NA NA [2,] 0.000000e+00 0.000000e+00 -8.881784e-16 [3,] 0.000000e+00 0.000000e+00 -8.881784e-16 [4,] 0.000000e+00 4.440892e-16 -8.881784e-16 [5,] -1.110223e-16 4.440892e-16 -8.881784e-16 [6,] -1.110223e-16 2.220446e-16 -4.440892e-16 [7,] -2.220446e-16 2.220446e-16 0.000000e+00 [8,] -2.220446e-16 0.000000e+00 0.000000e+00 [9,] -3.330669e-16 2.220446e-16 -8.881784e-16 [10,] -3.330669e-16 4.440892e-16 -8.881784e-16 SMA function use runMean # TTR / R / MovingAverages.R "SMA" <- function(x, n=10, ...) { # Simple Moving Average ma <- runMean( x, n ) if(!is.null(dim(ma))) { colnames(ma) <- "SMA" } return(ma) } Can anyone explain me that round error type? Is it possible to reproduce this same error generation in another language like C++ or C# ? Thanks in advance for your answers Regards Chris [[alternative HTML version deleted]] ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see 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.