用于将字符串解析为POSIXct和POSIXlt的函数采用相似的参数并返回相似的结果,但是该日期时间的存储方式有所不同。请参阅“备注”。
as.POSIXct("11:38", # time string format = "%H:%M") # formatting string ## [1] "2016-07-21 11:38:00 CDT" strptime("11:38", # identical, but makes a POSIXlt object format = "%H:%M") ## [1] "2016-07-21 11:38:00 CDT" as.POSIXct("11 AM", format = "%I %p") ## [1] "2016-07-21 11:00:00 CDT"
请注意,日期和时区是假定的。
as.POSIXct("11:38:22", # time string without timezone format = "%H:%M:%S", tz = "America/New_York") # set time zone ## [1] "2016-07-21 11:38:22 EDT" as.POSIXct("2016-07-21 00:00:00", format = "%F %T") # shortcut tokens for "%Y-%m-%d" and "%H:%M:%S"
请参阅?strptime此处以获取有关格式字符串的详细信息。
如果未提供日期元素,则使用当前日期的日期元素。
如果未提供时间元素,则使用从午夜开始的时间,即0s。
如果字符串或tz参数中均未提供时区,则使用本地时区。
接受的值tz取决于位置。
CST给予"CST6CDT"或"America/Chicago"
对于受支持的位置和时区,请使用:
在R中: OlsonNames()
或者,尝试使用R: system("cat $R_HOME/share/zoneinfo/zone.tab")
这些位置由互联网号码分配机构(IANA)给出
tz数据库时区列表(维基百科)
IANA TZ数据(2016e)