So it's a machine/OS issue: if you really want to trace it down, take a look here: http://svn.r-project.org/R/trunk/src/main/seq.c
seq.int() in R goes to do_seq() in C, but at this point it's probably best to identify it as floating-point gremlins and to work around. Michael On Tue, Apr 10, 2012 at 12:14 PM, Alexander <juschitz_alexan...@yahoo.de> wrote: > Thank you Michael > > It is indeed the OS > > identical(seq.int(0,1,length.out = 11), seq.int(0,1, by = 0.1)) # FALSE > > [[snip snip]] > > >>>> >>>>> I am working under R2.11.1 Windows and I was wondering why there is a >>>>> difference between >>>>> >>>>> seq.int(0,1,by=0.1)[4]-0.3 >>>>> seq.int(0,1,length.out=11)[4]-0.3 >>>>> >>>>> there is also the fact that >>>>> >>>>> seq(0,1,by=0.1)[4]-0.3 >>>>> seq(0,1,length.out=11)[4]-0.3 >>>>> >>>>> but I think this can be explained by floating precision... >>>> >>>> >>>> R FAQ: http://cran.r-project.org/doc/FAQ/R-FAQ.html >>>> >>>> 7.31 Why doesn't R think these numbers are equal? >>>> >>> This explains what the difference, but the problem for >>> >>> seq(2)*seq(2)==2 >>> >>> is not the same as >>> >>> 0.3+0.1-0.4==0 >>> >>> There must be a difference in the calculation for by and length.out in >>> seq.int otherwise there wouldn't be a difference in seq.int >>> >>> seq.int(0,1,length.out=11)[4]-seq.int(0,1,by=0.1)[4] >>> >>> I am more interested in the generation of the sequence... >>> [[snip snip]] ______________________________________________ R-help@r-project.org 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.