month_class | R Documentation |
Month objects are groupings of 'n consecutive months' stored relative to the
Unix Epoch. More precisely, grates_month
objects are stored as the integer
number (starting at 0), of n-month groups since the Unix Epoch (1970-01-01).
as_month(x, n, ...)
## Default S3 method:
as_month(x, n, ...)
## S3 method for class 'Date'
as_month(x, n, ...)
## S3 method for class 'POSIXt'
as_month(x, n, ...)
## S3 method for class 'character'
as_month(x, n, ...)
## S3 method for class 'factor'
as_month(x, n, ...)
new_month(x = integer(), n)
is_month(xx)
x , xx |
R objects. |
n |
Number of months that are being grouped. Must be greater than 1 (use
|
... |
Only used For character input where additional arguments are passed through
to |
as_month()
is a generic for conversion to <grates_month>
.
Character input is first parsed using as.Date()
.
POSIXt inputs are converted with the timezone respected.
Precision is only to the month level (i.e. the day of the month is always dropped).
new_month()
is a minimal constructor for <grates_month>
objects
aimed at developers. It takes, as input x
, the number of n-months since
the Unix Epoch (1970-01-01) and the related value of n
.
double
vectors will be converted via as.integer(floor(x))
.
A <grates_month>
object.
The algorithm to convert between dates and months relative to the UNIX Epoch comes from the work of Davis Vaughan in the unreleased datea package.
The yearmonth class.
# date coercion
as_month(Sys.Date(), n = 2)
# character coercion
as_month("2019-05-03", n = 4)
# POSIXt coercion
as_month(as.POSIXct("2019-03-04 01:01:01", tz = "America/New_York"), n = 2)
# direct construction
d <- seq.Date(from = as.Date("1970-03-01"), by = "2 month", length.out = 10)
stopifnot(
identical(
as_month(d, n = 2),
new_month(1:10, 2)
)
)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.