日期時間算術
要新增/減去時間,請使用 POSIXct,因為它以秒為單位儲存時間
## adding/subtracting times - 60 seconds
as.POSIXct("2016-01-01") + 60
# [1] "2016-01-01 00:01:00 AEDT"
## adding 3 hours, 14 minutes, 15 seconds
as.POSIXct("2016-01-01") + ( (3 * 60 * 60) + (14 * 60) + 15)
# [1] "2016-01-01 03:14:15 AEDT"
更正式地說,as.difftime
可用於指定新增到日期或日期時間物件的時間段。例如:
as.POSIXct("2016-01-01") +
as.difftime(3, units="hours") +
as.difftime(14, units="mins") +
as.difftime(15, units="secs")
# [1] "2016-01-01 03:14:15 AEDT"
要查詢日期/時間之間的差異,請使用 difftime()
獲取秒,分,小時,天或周的差異。
# using POSIXct objects
difftime(
as.POSIXct("2016-01-01 12:00:00"),
as.POSIXct("2016-01-01 11:59:59"),
unit = "secs")
# Time difference of 1 secs
要生成日期時間序列,請使用 seq.POSIXt()
或簡單地使用 seq
。