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, [EMAIL PROTECTED] 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@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-devel > ______________________________________________ R-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-devel