[R] seq() in 0.62.4 and 0.63
Peter Dalgaard BSA
p.dalgaard at biostat.ku.dk
Sun Nov 15 02:21:21 CET 1998
Peter Dalgaard BSA <p.dalgaard at biostat.ku.dk> writes:
> Prof Brian D Ripley <ripley at stats.ox.ac.uk> writes:
>
> > Solaris 2.6, R Version 0.63.0 (November 14, 1998)
> > Version 0.62.4 (October 24, 1998)
> >
> > > seq(0.15, 0.70, 0.05)
> > [1] 0.15 0.20 0.25 0.30 0.35 0.40 0.45 0.50 0.55 0.60 0.65
> >
> > The much reviled (on r-help) 0.62.3 got such simple cases right (even if
> > 0.62.1 did not).
The following patch appears to work. At least it passes the following
test, which is more than can be said for the original:
# This takes a while...
max(sapply(rnorm(1000),
function(x)max(seq(x+1/x,x+10000/x,1/x)-(x + (1:10000)/x))))
(gives 1.490116e-08, broken version gave several warnings about object
length mismatch)
*** /tmp/T0a004hF Sun Nov 15 14:09:09 1998
--- seq.R Sun Nov 15 14:09:09 1998
***************
*** 31,44 ****
dd <- abs(del)/max(abs(to), abs(from))
if (dd < sqrt(.Machine$double.eps))
return(from)
! eps <- .Machine$double.eps * max(1, 1/dd)
! n <- as.integer(n * (1 + eps))
! if(eps*2*n >= 1)
! warning(paste("seq.default(f,t,by): n=",n,
! ": possibly imprecise intervals"))
! if(by>0) while(from+ n*by > to) n <- n - 1
! else while(from+ n*by < to) n <- n - 1
!
from + (0:n) * by
}
else if(length.out < 0)
--- 31,37 ----
dd <- abs(del)/max(abs(to), abs(from))
if (dd < sqrt(.Machine$double.eps))
return(from)
! n <- as.integer(n + 1e-7)
from + (0:n) * by
}
else if(length.out < 0)
--
O__ ---- Peter Dalgaard Blegdamsvej 3
c/ /'_ --- Dept. of Biostatistics 2200 Cph. N
(*) \(*) -- University of Copenhagen Denmark Ph: (+45) 35327918
~~~~~~~~~~ - (p.dalgaard at biostat.ku.dk) FAX: (+45) 35327907
-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-.-
r-help mailing list -- Read http://www.ci.tuwien.ac.at/~hornik/R/R-FAQ.html
Send "info", "help", or "[un]subscribe"
(in the "body", not the subject !) To: r-help-request at stat.math.ethz.ch
_._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._._
More information about the R-help
mailing list