Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

ymd(my_vector) silently parses "2013-0-1" as part of my_vector #236

nacnudus opened this issue Apr 28, 2014 · 3 comments


Copy link

commented Apr 28, 2014


a <- c("2013-1-1", "2013-0-1")
b <- "2013-0-1"


[1] "2013-01-01 UTC" "2013-01-01 UTC"


Warning: All formats failed to parse. No formats found.

[1] NA


R version 3.0.3 (2014-03-06)

Platform: i386-w64-mingw32/i386 (32-bit)


[1] LC_COLLATE=English_New Zealand.1252

[2] LC_CTYPE=English_New Zealand.1252

[3] LC_MONETARY=English_New Zealand.1252


[5] LC_TIME=English_New Zealand.1252

attached base packages:

[1] stats graphics grDevices utils datasets methods base

other attached packages:

[1] lubridate_1.3.3 knitr_1.5

loaded via a namespace (and not attached):

[1] digest_0.6.4 evaluate_0.5.3 formatR_0.10 memoise_0.1

[5] plyr_1.8.1 Rcpp_0


This comment has been minimized.

Copy link

commented Apr 28, 2014

Ugh, sorry about the formatting. Didn't look like that in the "preview". Can't seem to edit it now.

@nacnudus nacnudus changed the title ymd(my_vector) gives neither NA nor an error when my_vector includes "2013-0-1" ymd(my_vector) silently parses "2013-0-1" as part of my_vector Apr 28, 2014


This comment has been minimized.

Copy link

commented Apr 28, 2014

"2013-0-1" is not a date, is it? Where did you get it from?

It works by accident because the underlying C parser is a bit relaxed about the 0s in a couple of places. The format detection is rigorous, though, and this is why your b vector fails.

So your point is to make the parser fail on a right? Or make it work on b?


This comment has been minimized.

Copy link

commented Apr 28, 2014

Correct, "2013-0-1" is not a date, and I would expect the parser to fail on it. I got it by doing paste(x$year, x$month, x$day, sep = "-") on dirty data that had a zero in the month column.

Thanks for all the lubridate functions that do work, by the way, they save me hours every week.

@vspinu vspinu closed this in a739131 Jun 29, 2014

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
None yet
2 participants
You can’t perform that action at this time.