round.POSIXt {base} | R Documentation |
Round / Truncate Date-Time Objects
Description
Round or truncate date-time objects.
Usage
## S3 method for class 'POSIXt'
round(x,
units = c("secs", "mins", "hours", "days", "months", "years"))
## S3 method for class 'POSIXt'
trunc(x,
units = c("secs", "mins", "hours", "days", "months", "years"),
...)
## S3 method for class 'Date'
round(x, ...)
## S3 method for class 'Date'
trunc(x,
units = c("secs", "mins", "hours", "days", "months", "years"),
...)
Arguments
x |
|
units |
one of the units listed, a string. Can be abbreviated. |
... |
arguments to be passed to or from other methods, notably
|
Details
The time is rounded or truncated to the second, minute, hour, day, month or year. Time zones are only relevant to days or more, when midnight in the current time zone is used.
For units
arguments besides “months” and “years”,
the methods for class "Date"
are of little use except to remove
fractional days.
Value
An object of class "POSIXlt"
or "Date"
.
See Also
round
for the generic function and default methods.
Examples
round(.leap.seconds + 1000, "hour")
trunc(Sys.time(), "day")
(timM <- trunc(Sys.time() -> St, "months")) # shows timezone
(datM <- trunc(Sys.Date() -> Sd, "months"))
(timY <- trunc(St, "years")) # + timezone
(datY <- trunc(Sd, "years"))
stopifnot(inherits(datM, "Date"), inherits(timM, "POSIXt"),
substring(format(datM), 9,10) == "01", # first of month
substring(format(datY), 6,10) == "01-01", # Jan 1
identical(format(datM), format(timM)),
identical(format(datY), format(timY)))
[Package base version 4.4.0 Index]