[Rd] as.Date.character suggestion
peter.langfelder at gmail.com
Wed Aug 20 22:50:11 CEST 2014
That would be my preferred solution, but it would break backwards
compatibility for format="", so others may disagree.
On Wed, Aug 20, 2014 at 1:18 PM, Duncan Murdoch
<murdoch.duncan at gmail.com> wrote:
> On 20/08/2014, 4:11 PM, Peter Langfelder wrote:
>> The default format="" in as.Date.character is supremely confusing. The
>> help shows as.Date defined as
>> ## S3 method for class 'character'
>> as.Date(x, format = "", ...)
>> yet the function behaves very differently when format is not specified
>> and when it is specified to its default:
>>  "2012-01-01"
>>> as.Date("2012-01-01", format = "")
>>  "2014-08-20" ### Gives today.
>> The default setting is never used, because if format is not given,
>> values "%Y-%m-%d" and "%Y/%m/%d" are tried for it (rather than "").
>> My suggestion is to leave out the default "" for format in as.Date:
>> as.Date(x, format, ...)
>> If this causes a conflict in the S3 dispatching, at least indicate in
>> the help that the default is never used and the function works
>> differently if format is specified to its default.
> Wouldn't it be simpler to change the test from
> if (missing(format))
> if (format == "")
> Duncan Murdoch
More information about the R-devel