[R] Regarding as. Date function
David Winsemius
dwinsemius at comcast.net
Mon Nov 21 06:17:25 CET 2011
On Nov 20, 2011, at 10:46 PM, Shant Ch wrote:
>
> Hi all,
>
>
>
> I have a data set
> containing dates in the format of m/d/y starting from 1950. I wanted
> to
> use standard format of date R uses. So I read the data set in R and
> converted it using as.Dates. But for dates from 1950-1968, I have the
> following problem.
>
> as.Date("1/1/50","%m/%d/%y",origin="1900/01/01") ="2050-01-01"
> instead of "1950-01-01"
>
> But for dates 1969 onwards it is working fine.
As is documented in ?strptime
%y
Year without century (00–99). On input, values 00 to 68 are prefixed
by 20 and 69 to 99 by 19 – that is the behaviour specified by the 2004
and 2008 POSIX standards, but they do also say ‘it is expected that in
a future version the default century inferred from a 2-digit year will
change’.
>
> as.Date("1/1/69","%m/%d/%y") = "1969-01-01"
>
Perhaps some greppingg surgery?
> as.Date(sub("(.+/.+/)([0-6])", "\\119\\2", "1/1/69"),"%m/%d/%Y")
[1] "1969-01-01"
You have not really described the problem completely .... what is the
range of dates we need to work with? Do you have any "1/1/05" type
values and if so what century should be assumed?
>
> Can anyone please help me find out the problem?
>
> Thanks
> Shant
> [[alternative HTML version deleted]]
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
David Winsemius, MD
West Hartford, CT
More information about the R-help
mailing list