Working with date and time in R is sometimes tricky. Today I gave lubridate a try and was surprised on how easy it can be. Lubridate is a available on git and on CRAN. There is also a good introduction published in the Journal of Statistical Software.

install.packages("lubridate")
library(lubridate)

# Create an object
bday <- dmy("23121984")

This could also have been achieved with any combination of d(ay)m(onth)y(ear), i.e. ymd() or dym().

Several options are provided to work with the bday object:

wday(bday) # day of the week
wday(bday, label=T) # day of the week, abreviated
yday(bday) # day of the year

lubridate also makes it easy to calculate with dates

wday(bday + years(1), label=T) # day of week one year later
table(sapply(1:100, function(x) wday(bday + years(x), label=T))) # days of the week for next 100 years.

### Like this:

Like Loading...

*Related*

the JSS link is a bit mistyped.