[R] seq unexpected behavior

2006-07-26 Thread Vries, Han de
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



 sessionInfo()
R version 2.2.1, 2005-12-20, i386-pc-mingw32

attached base packages:
[1] methods   stats graphics  grDevices utils
datasets 
[7] base   

(NB I also tried version 2.3.1 and got the same result - both versions
are precompiled)
  
 Sys.getlocale()
[1] LC_COLLATE=English_United States.1252;LC_CTYPE=English_United
States.1252;LC_MONETARY=English_United
States.1252;LC_NUMERIC=C;LC_TIME=English_United States.1252




This email message is for the sole use of the intended recip...{{dropped}}

__
R-help@stat.math.ethz.ch 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.


Re: [R] seq unexpected behavior

2006-07-26 Thread Marc Schwartz
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.09997780

 print(0.8 - 0.7, 20)
[1] 0.10008882


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

__
R-help@stat.math.ethz.ch 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.