Hi, I tried to convert a date-like string to date as below as.Date("202012", format = "%y%m") This gives NA Could you please help why I am getting NA value?
If I remember correctly, %y is the last 2 digits of the year, so 90 would be 1990 and 15 would be 2015. I think you meant %Y I think you can find this in ?Date, or maybe ?strptime, I can't remember exactly. On Sat, May 31, 2025, 12:38 Christofer Bogaso <bogaso.christofer at gmail.com> wrote:> Hi, > > I tried to convert a date-like string to date as below > > as.Date("202012", format = "%y%m") > > This gives NA > > Could you please help why I am getting NA value? > > ______________________________________________ > R-help at 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. >[[alternative HTML version deleted]]
Read ?strptime. %y is not the same thing as %Y. On May 31, 2025 9:32:26 AM PDT, Christofer Bogaso <bogaso.christofer at gmail.com> wrote:>Hi, > >I tried to convert a date-like string to date as below > >as.Date("202012", format = "%y%m") > >This gives NA > >Could you please help why I am getting NA value? > >______________________________________________ >R-help at 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.-- Sent from my phone. Please excuse my brevity.
On 31 May 2025 at 22:02, Christofer Bogaso wrote: | I tried to convert a date-like string to date as below | | as.Date("202012", format = "%y%m") | | This gives NA | | Could you please help why I am getting NA value? A _Date_ is comprised of three values for _year_, _month_ and _day_. What you supplied does not match that requirement. Hence the failure you see, and one way to overcome this (by specifying an arbitrary day, here the first): > as.Date("202012", "%Y%m") [1] NA > as,Date(paste0("202012", "01"), "%Y%m%d") [1] "2020-12-01" > even when we correct the inadequate '%y' parser others have pointed out. Dirk -- dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org