As you say, not reproducible. Any chance that you could put a save() file containing t1 somewhere we can get it?

On Tue, 14 Oct 2008, Sklyar, Oleg (London) wrote:

In some cases rounding problems lead to creation of logically incorrect
times in POSIXlt when converting from POSIXct.

## everything works fine for the following values:
x = c(1223972160.00000, 1223982660.00000, 1223994660.0000)
## adding 0s for the epoch
x = x + as.POSIXct("1970-01-01 00:00") -
as.numeric(as.POSIXct("1970-01-01 00:00"))
x
## [1] "2008-10-14 09:16:00 BST" "2008-10-14 12:11:00 BST"
## [3] "2008-10-14 15:31:00 BST"

Now, numbers that look the same but originate from some calculations
lead to the following weirdness in POSIXlt. Sorry you will not be able
to reproduce as it is impossible to reproduce the same rounding:

as.character(as.numeric(t1))
[1] "1223972160.00000" "1223982660.00000" "1223994660.00000"
class(t1)
[1] "POSIXt"  "POSIXct"
## here we get a second less due to rounding errors somewhere, not too
bad
t1
[1] "2008-10-14 09:15:59 BST" "2008-10-14 12:10:59 BST"
[3] "2008-10-14 15:30:59 BST"
t2 = as.POSIXlt(t1)
t2
[1] "2008-10-14 09:15:59 BST" "2008-10-14 12:10:59 BST"
[3] "2008-10-14 15:30:59 BST"

## however here we do get a real problem
t2$sec
[1] 60 60 60
## and here as well
format(t2, "%Y-%m-%d %H:%M:%OS3")
[1] "2008-10-14 09:15:60.000" "2008-10-14 12:10:60.000"
[3] "2008-10-14 15:30:60.000"
format(t1, "%Y-%m-%d %H:%M:%OS3")
[1] "2008-10-14 09:15:60.000" "2008-10-14 12:10:60.000"
[3] "2008-10-14 15:30:60.000"

Everything is back to normal with applying round (we are anyway limited
to 15 digits):
t3 = round(as.numeric(t1),5) + .origin
t3
[1] "2008-10-14 09:16:00 BST" "2008-10-14 12:11:00 BST"
[3] "2008-10-14 15:31:00 BST"

sessionInfo()
R version 2.9.0 Under development (unstable) (2008-09-30 r46585)
x86_64-unknown-linux-gnu

locale:
C

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

[8] base

other attached packages:
[1] AHLFinance_0.1.54  AHLDBConn_0.2.3    ROracle_0.5-9      DBI_0.2-4

[5] RODBC_1.2-3        AHLNagLib_0.1.3    AHLCalendar_0.2.59
AHLBase_0.1.25

loaded via a namespace (and not attached):
[1] tools_2.9.0

Dr Oleg Sklyar
Research Technologist
AHL / Man Investments Ltd
+44 (0)20 7144 3107
[EMAIL PROTECTED]

**********************************************************************
The contents of this email are for the named addressees ...{{dropped:19}}

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel


--
Brian D. Ripley,                  [EMAIL PROTECTED]
Professor of Applied Statistics,  http://www.stats.ox.ac.uk/~ripley/
University of Oxford,             Tel:  +44 1865 272861 (self)
1 South Parks Road,                     +44 1865 272866 (PA)
Oxford OX1 3TG, UK                Fax:  +44 1865 272595

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to