Function to find date of end of ISO week for a date
isowkend <- function(mydate) {
intdate <- as.POSIXlt(mydate)
output <- intdate
output[intdate$wday == 0 &
!is.na(intdate$wday)] <-
intdate[intdate$wday == 0 & !is.na(intdate$wday)]
output[intdate$wday %in% c(1, 2, 3, 4, 5, 6) &
!is.na(intdate$wday)] <-
intdate[intdate$wday %in% c(1, 2, 3, 4, 5, 6) &
!is.na(intdate$wday)] + 24 * 60 * 60 * (7 - intdate$wday[intdate$wday %in% c(1, 2, 3, 4, 5, 6) & !is.na(intdate$wday)])
output
}