開始使用免費開始

在 datetime 上加減時間跨度

時間跨度常見的用途,是把它們加到或減去某個時間點。例如,要從先前練習中的 mar_11 計算未來一天的時間,你可以這樣做:

mar_11 + days(1)
mar_11 + ddays(1)

在主控台試試看,你會得到不同的結果!但哪一個才是正確的?這取決於你的目的。如果你想考量時間單位(此例為天)可能有不同長度(例如夏令時間切換),就使用 period days()。如果你想要精準地往未來 86400 秒,則使用 duration ddays()

在這個練習中,你會對日期與 datetime 加上或減去時間跨度。

本練習屬於課程

在 R 中處理日期與時間

檢視課程

練習說明

  • 現在是 2018 年 8 月 27 日(星期一)下午 2 點,你想在下週同一時間提醒自己寄一封 email。對 mon_2pm 加上一個為期一週的 period。
  • 現在是 2018 年 8 月 28 日(星期二)上午 9 點,你要開始執行一段通常需要約 81 小時的程式碼。什麼時候會結束?對 tue_9am 加上一個 81 小時的 duration。
  • 五年前你在做什麼?從 today() 減去一個 5 年的 period。
  • today() 減去一個 5 年的 duration。*這會得到不同的日期嗎?*

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# Add a period of one week to mon_2pm
mon_2pm <- dmy_hm("27 Aug 2018 14:00")
mon_2pm + ___

# Add a duration of 81 hours to tue_9am
tue_9am <- dmy_hm("28 Aug 2018 9:00")
tue_9am + ___

# Subtract a period of five years from today()
today() - ___

# Subtract a duration of five years from today()
today() - ___
編輯並執行程式碼