I have a vector of date objects (yyyy-mm-dd) and I want to determine if any of them are on weekend or not. Is there a function that can determine this straighta
You can use the base R function weekdays().
x <- seq(Sys.Date() - 10, Sys.Date(), by = 1)
weekdays(x, abbr = TRUE)
# [1] "Wed" "Thu" "Fri" "Sat" "Sun" "Mon" "Tue" "Wed" "Thu" "Fri" "Sat"
x[grepl("S(at|un)", weekdays(x))]
# [1] "2014-10-11" "2014-10-12" "2014-10-18"
As far as lubridate goes, wday() has a label argument. When set to TRUE, the (abbreviated) day names are returned instead of numbers. Use the abbr argument to change to full names.
library(lubridate)
wday(x, label = TRUE)
# [1] Wed Thurs Fri Sat Sun Mon Tues Wed Thurs Fri Sat
# Levels: Sun < Mon < Tues < Wed < Thurs < Fri < Sat