On Wed, 2006-07-26 at 18:35 -0700, Vries, Han de wrote:
> seq(0.1, 0.9 - 0.8, by = 0.1) gives the following error message:
> 
> Error in seq.default(0.1, 0.9 - 0.8, by = 0.1) : 
>         wrong sign in 'by' argument
> 
> but seq(0.1, 0.8 - 0.7, by = 0.1) gives
> [1] 0.1
> (no error message)
> 
> Why do I get an error message in the first case?
> Han


See R FAQ 7.31 Why doesn't R think these numbers are equal?

> print(0.9 - 0.8, 20)
[1] 0.09999999999999997780

> print(0.8 - 0.7, 20)
[1] 0.10000000000000008882


In the first case, the result of the subtraction is slightly less than
0.1, resulting in a negative interval. In the second case, it is
slightly greater than 0.1, which is OK.

HTH,

Marc Schwartz

______________________________________________
[email protected] mailing list
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.

Reply via email to