On 15 May 2025 at 06:56, Barthelemy Tanguy via R-help wrote: | Hello, | | I'm encountering what seems to me to be an anomaly with the as.Date() function. If I fill in an origin or not, the function will not return the same type of object (integer or double). | | Here's a small example: | | ``` r | as.Date(0L) |> typeof() | #> [1] "integer" | as.Date(0L, origin = "1970-01-01") |> typeof() | #> [1] "double" | ``` | | Is it a bug or the intended behaviour? I don't see any mention of this in the documentation. | I'm working on R 4.5
It is the intended behavior. A 'Date' object can present 'whole' (ie integer) or 'fractional' days since the epoch. There is no requirement about what internal representation is used. >From help(Date) under Details: It is intended that the date should be an integer value, but this is not enforced in the internal representation. Fractional days will be ignored when printing. It is possible to produce fractional days via the ‘mean’ method or by adding or subtracting (see Ops.Date). Best, Dirk -- dirk.eddelbuettel.com | @eddelbuettel | e...@debian.org ______________________________________________ R-help@r-project.org mailing list -- To UNSUBSCRIBE and more, see https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide https://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.