[Rd] as.Date without "origin"

Dan Dalthorp dd@|thorp @end|ng |rom protonm@||@com
Wed Nov 2 16:49:32 CET 2022


Of course. But the broken as.Date in R-devel breaks one of my packages, so I'm getting threats of the package being removed from CRAN in a few days if the breakage is not resolved.

DHD




------- Original Message -------
On Wednesday, November 2nd, 2022 at 8:30 AM, peter dalgaard <pdalgd using gmail.com> wrote:


> 
> 
> This is in R-devel, mind you, i.e., unreleased and quite possibly unfinished work.
> 
> No released version of R does this. E.g.,
> 
> > as.Date(0)
> 
> Error in as.Date.numeric(0) : 'origin' must be supplied
> 
> > version
> 
> _
> platform x86_64-apple-darwin21.6.0
> arch x86_64
> os darwin21.6.0
> system x86_64, darwin21.6.0
> status Patched
> major 4
> minor 2.2
> year 2022
> month 11
> day 02
> svn rev 83236
> language R
> version.string R version 4.2.2 Patched (2022-11-02 r83236)
> nickname Innocent and Trusting
> 
> > On 2 Nov 2022, at 14:38 , Dan Dalthorp via R-devel r-devel using r-project.org wrote:
> > 
> > I don't see a compelling rationale for changing the default behavior as.Date to deviate from the wholly reasonable status quo of "as.Date will accept numeric data (the number of days since an epoch), but only if origin is supplied." That has been the expectation for a long, long time.
> > 
> > In any case, the manual should match the behavior.
> > 
> > -DHD
> > 
> > ------- Original Message -------
> > On Wednesday, November 2nd, 2022 at 6:20 AM, Spencer Graves spencer.graves using prodsyse.com wrote:
> > 
> > > I've felt that "as.Date" should default to origin "1970-01-01", so I
> > > added a modification to Ecfun:
> > > 
> > > Ecfun::as.Date1970(0)
> > > 
> > > If R-devel chose to change the default on this, I would happily
> > > deprecate Ecfun::as.Date1970 in favor of base::as.Date ;-)
> > > 
> > > I would therefore support changing the documentation to match the new
> > > behavior.
> > > 
> > > Spencer Graves
> > > 
> > > On 11/2/22 7:30 AM, Dan Dalthorp via R-devel wrote:
> > > 
> > > > The new (2022-10-11 r83083 ucrt) as.Date function returns a date rather than an error when called without "origin" specified.
> > > > 
> > > > # previous versions of R
> > > > as.Date(0)
> > > > # Error in as.Date.numeric(0) : 'origin' must be supplied
> > > > 
> > > > # new:
> > > > as.Date(0)
> > > > # [1] "1970-01-01"
> > > > 
> > > > This is at odds with the help file, which gives:
> > > > 
> > > > origin
> > > > 
> > > > aDateobject, or something which can be coerced byas.Date(origin, ...)to such an object.
> > > > 
> > > > And:
> > > > as.Datewill accept numeric data (the number of days since an epoch), butonlyiforiginis supplied.
> > > > 
> > > > The behavior described in the help file and implemented in previous versions seems more reasonable than returning a date with an arbitrary "origin". In any case, in the r-devel there is a mismatch between the function and its description.
> > > > 
> > > > -Dan
> > > > [[alternative HTML version deleted]]
> > > > 
> > > > ______________________________________________
> > > > R-devel using r-project.org mailing list
> > > > https://stat.ethz.ch/mailman/listinfo/r-devel
> > 
> > ______________________________________________
> > R-devel using r-project.org mailing list
> > https://stat.ethz.ch/mailman/listinfo/r-devel
> 
> 
> --
> Peter Dalgaard, Professor,
> Center for Statistics, Copenhagen Business School
> Solbjerg Plads 3, 2000 Frederiksberg, Denmark
> Phone: (+45)38153501
> Office: A 4.23
> Email: pd.mes using cbs.dk Priv: PDalgd using gmail.com



More information about the R-devel mailing list