The adjust() function rolls dates to the closest good dates. This function shifts dates by a given period and adjusting the resulting dates to a closest good dates following the given business day convention.

shift(dates, period, bdc = "u", calendar = EmptyCalendar(),
  eom_rule = TRUE)



a vector of dates to shift and adjust


an atomic instance of the period class in the sense that only one of its slots should be non-zero. It must also only be a day, month or year period type.


the business day convention used to roll the dates if necessary (default: "u" - unadjusted)


an object that inherits from Calendar or JointCalendar which is used to determine the goodness of dates (default: EmptyCalendar())


if one of the dates is the last business day of the month, is being shifted by a month or year period and eom_rule is TRUE then the shifted date is also the last business day of the month (default: TRUE)


a vector of shifted dates

See also

Other calendar methods: adjust, generate_schedule, is_good, is_valid_bdc, is, locale, tz


library(lubridate) ausy <- AUSYCalendar() shift(ymd("20120229"), months(1), "u", ausy, FALSE)
#> [1] "2012-03-29"
shift(ymd("20120229"), months(1), "u", ausy, TRUE)
#> [1] "2012-03-30"