as.POSIX* {base} | R Documentation |
Functions to manipulate objects of classes "POSIXlt"
and
"POSIXct"
representing calendar dates and times (to the nearest
second).
as.POSIXct(x, tz = "") as.POSIXlt(x, tz = "")
x |
An object to be converted. |
tz |
A timezone specification to be used for the conversion.
System-specific, but "" is the current timezone, and
"GMT" is UTC (Coordinated Universal Time, in French). |
The as.POSIX*
functions convert an object to one of the two
classes used to represent date/times (calendar dates plus time to the
nearest second). They can take convert a wide variety of objects,
including objects of the other class and of classes "date"
(from package date
), "chron"
and
"dates"
(from package chron
) to these
classes. They can also convert character strings of the formats
"2001-02-03"
and "2001/02/03"
optionally followed by
white space and a time in the format "14:52"
or
"14:52:03"
. (Formats such as "01/02/03"
are ambiguous
but can be converted via a format specification by
strptime
.)
as.POSIXct
and as.POSIXlt
return an object of the
appropriate class.
If you want to extract specific aspects of a time (such as the day of
the week) just convert it to class "POSIXlt"
and extract the
relevant component(s) of the list, or if you want a character
representation (such as a named day of the week) use
format.POSIXlt
or format.POSIXct
.
DateTimeClasses for details of the classes;
strptime
for conversion to and from character
representations.
(z <- Sys.time()) # the current date, as class "POSIXct" unclass(z) # a large integer floor(unclass(z)/86400) # the number of days since 1970-01-01 (z <- as.POSIXlt(Sys.time())) # the current date, as class "POSIXlt" unlist(unclass(z)) # a list shown as a named vector as.POSIXlt(Sys.time(), "GMT") # the current time in GMT