year-month-weekday-setters {clock} | R Documentation |
These are year-month-weekday methods for the setter generics.
set_year()
sets the Gregorian year.
set_month()
sets the month of the year. Valid values are in the range
of [1, 12]
.
set_day()
sets the day of the week. Valid values are in the range of
[1, 7]
, with 1 = Sunday, and 7 = Saturday.
set_index()
sets the index indicating that the corresponding
weekday is the n-th instance of that weekday in the current month. Valid
values are in the range of [1, 5]
.
There are sub-daily setters for setting more precise components.
## S3 method for class 'clock_year_month_weekday' set_year(x, value, ...) ## S3 method for class 'clock_year_month_weekday' set_month(x, value, ...) ## S3 method for class 'clock_year_month_weekday' set_day(x, value, ..., index = NULL) ## S3 method for class 'clock_year_month_weekday' set_index(x, value, ...) ## S3 method for class 'clock_year_month_weekday' set_hour(x, value, ...) ## S3 method for class 'clock_year_month_weekday' set_minute(x, value, ...) ## S3 method for class 'clock_year_month_weekday' set_second(x, value, ...) ## S3 method for class 'clock_year_month_weekday' set_millisecond(x, value, ...) ## S3 method for class 'clock_year_month_weekday' set_microsecond(x, value, ...) ## S3 method for class 'clock_year_month_weekday' set_nanosecond(x, value, ...)
x |
A year-month-weekday vector. |
value |
The value to set the component to. For |
... |
These dots are for future extensions and must be empty. |
index |
This argument is only used with If |
x
with the component set.
x <- year_month_weekday(2019, 1:3) set_year(x, 2020:2022) # Setting the weekday on a month precision year-month-weekday requires # also setting the `index` to fully specify the day information x <- set_day(x, clock_weekdays$sunday, index = 1) x # Once you have at least day precision, you can set the weekday and # the index separately set_day(x, clock_weekdays$monday) set_index(x, 3) # Set to the "last" instance of the corresponding weekday in this month # (Note that some months have 4 Sundays, and others have 5) set_index(x, "last") # Set to an invalid index # January and February of 2019 don't have 5 Sundays! invalid <- set_index(x, 5) invalid # Resolve the invalid dates by choosing the previous/next valid moment invalid_resolve(invalid, invalid = "previous") invalid_resolve(invalid, invalid = "next") # You can also "overflow" the index. This keeps the weekday, but resets # the index to 1 and increments the month value by 1. invalid_resolve(invalid, invalid = "overflow")