Expand a time_period
vector to the full range of possible times
Source: R/periodic-times.R
date_seq.time_period.Rd
Derive from a vector of observation time_periods
, a complete ordered sequence of
periods in a regular time series, where the length of the periods is
specified, as a number of days, weeks, years etc. E.g. this can convert a
random set of times to a ordered complete list of 1 week intervals (or 2
month intervals) spanning the same range as the dates. This has some
interesting problems regarding where to put breaks within a month or week.
Often this is either based on a specific date (e.g. yearly periods starting
at 2020-01-01) or a day of week (e.g. 2 weekly periods staring on a sunday)
or maybe relative to the input time series (weekly ending on the last date of
the data). There is also a problem when we consider data that may have
incomplete starting and end periods, which may not be comparable to other
periods, and we may need to exclude these from the result.
Usage
# S3 method for time_period
date_seq(x, period = attributes(x)$unit, complete = FALSE, ...)
Arguments
- x
a time period vector
- period
the gap between observations as a number of days or as a natural language definition of the period such as "1 week", '2 weeks', '1 month', etc. If not given this will be derived from the dates.
- complete
truncate incomplete start and end periods
- ...
ignored
Value
a vector of time_periods
for regular periods between the minimum and maximum of
dates, with the boundaries defined by the anchor.
Examples
tmp = as.time_period(c(0,10,100), 7, "2020-01-01")
date_seq(tmp, "7 days")
#> time unit: week, origin: 2020-01-01 (a Wednesday)
#> [1] 0 10 20 30 40 50 60 70 80 90 100