At 13:34 31/03/2004, Prof Brian Ripley wrote:

Take a look at formatReal.  scientific thinks 0.251 has 17 digits and
0.255 has 3.  It really doesn't make any sense to ask for more precision
than you have (.Machine$double.eps) and you do often get spurious
errors if you attempt to do so.  So 15 digits is normally safe, but no
more.

Note that there are decimal -> binary -> decimal conversions and you
can't say which one introduced the small changes.

I completely agree with you. My problem arise when I try to compute a correlation. One of the variable seems to have equal values but it does not. Hence, it has a very low variance and so when I try to compute the correlation with another variable, this correlation is very high. I wonder if it would not be good to introduce a tolerance threshold. Is it meaningful to produce correlation when a variance is very low ?
See the example below :


> essai=matrix(c(0.266,.234,.005,.481,.1,.009,.4,.155,.255,.2,.34,.43),4,3)
> essai2=sweep(essai,2,apply(essai,2,sum),"/")
> x=coef(lm(essai2~scale(runif(4))))
> x
                      [,1]      [,2]       [,3]
(Intercept)     0.25000000 0.2500000 0.25000000
scale(runif(4)) 0.05307906 0.1330111 0.06936634
> cor(x[1,],runif(3))
[1] 0.932772
> var(x)
           [,1]        [,2]       [,3]
[1,] 0.01938893 0.011518783 0.01778528
[2,] 0.01151878 0.006843202 0.01056607
[3,] 0.01778528 0.010566067 0.01631426
> var(x[1,])
[1] 1.92593e-33

Obviously, I can introduce this threshold, but I wonder if 15 digits is always a good limit to avoid this kind of problems

> cor(round(x[1,],15),runif(3))
[1] NA
Warning message:
The standard deviation is zero in: cor(x, y, na.method, method == "kendall")


Thanks a lot to all,


Stéphane DRAY
--------------------------------------------------------------------------------------------------


Département des Sciences Biologiques
Université de Montréal, C.P. 6128, succursale centre-ville
Montréal, Québec H3C 3J7, Canada

Tel : 514 343 6111 poste 1233
E-mail : [EMAIL PROTECTED]
--------------------------------------------------------------------------------------------------


Web http://www.steph280.freesurf.fr/

______________________________________________
[EMAIL PROTECTED] mailing list
https://www.stat.math.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide! http://www.R-project.org/posting-guide.html

Reply via email to