[Rd] Logic Error (PR#8677)
Janusz Kawczak
jkawczak at uncc.edu
Mon Mar 13 01:08:01 CET 2006
However, mean(x)==0.2 returns TRUE
Also, mean(x)>=(1-0.8) returns TRUE ;)
So, it's not just the approximation calculus.
On Sun, 12 Mar 2006, Duncan Murdoch wrote:
> On 3/12/2006 6:39 PM, mkdavis at math.ucalgary.ca wrote:
> > Full_Name: Matthew Davis
> > Version: 2.2.0
> > OS: OS X (10.4.5)
> > Submission from: (NULL) (209.107.120.195)
> >
> >
> > the mean of my sample x is 0.2, and when I check mean(x)<=0.2 I get a TRUE
> > value, when I check mean(x)<=(1-0.8) I get a FALSE value. (x <- c(0, 1, 0, 0,
> > 0, 1, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0))
>
> Why make this so complicated? The natural conclusion from that is that
> 0.2 is not equal to (1-0.8), and indeed:
>
> > (1-0.8) == 0.2
> [1] FALSE
>
> The problem is that neither 0.2 nor 0.8 can be represented exactly, so
> when you do calculations using them you are doing approximations. The
> approximation involving your mean is different than the one involving
> (1-0.8). This is an FAQ,
>
> 7.31 Why doesn't R think these numbers are equal?
>
> This is not a bug.
>
> Duncan Murdoch
>
> ______________________________________________
> R-devel at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-devel
>
More information about the R-devel
mailing list