timeSeq
.
timeAlign(x, by="days", k.by=1, direction=1, week.align=NULL, holidays=timeDate())
"milliseconds"
"seconds"
"minutes"
"hours"
"days"
,
"weekdays"
"bizdays"
"weeks"
"months"
"quarters"
"years"
by
units to align to.
Ignored for "weekdays"
, "bizdays"
, and "weeks"
.
k.by * by
units.
NULL
, and by
is "weeks"
, you can supply a character
string (or an integer, 0 to 6 with 0 being Sunday)
to specify a weekday to align to. The character string must
be sufficient to make a unique case-insensitive match to the strings
in timeDateOptions("time.day.name")
.
direction
), so that
they lie on integer multiples of k.by * by
units of time,
starting from the beginning of the next larger time unit
(for example, if by="days"
,
then align to multiples of k.by
days added to the first of the
month. If by="hours"
, align to multiples of k.by
hours since
midnight).Notes
"weeks"
, "weekdays"
, and "bizdays"
,
k.by
is assumed to be 1 and ignored.
"weeks"
without week.align
is equivalent to "days"
.
k.by
should be a divisor of the number of
by
units in the next larger time unit, or NA
values
result.
timeSeq
.
x <- timeDate(c("2/11/1992 22:34", "7/8/1995 08:32"),
format="%a %02m/%02d/%Y %02H:%02M")
# move to beginning of month
timeAlign(x,"months",direction=-1)
# move to beginning of next month
timeAlign(x,"months",direction=1)
# move to next multiple of 3 hours
timeAlign(x,"hours",3)
# move to next Friday
timeAlign(x,"weeks", week.align="Friday")
Run the code above in your browser using DataLab